计算复杂性-第一次作业

合集下载

数据结构(C++)第一次作业参考答案

数据结构(C++)第一次作业参考答案

数据结构第一次作业数据结构第一次作业一.单项选择题(20分)( )1.已知一算术表达式的后缀形式为ABC *+DE-/,则其中缀形式为 _________。

a、(A+B *C)/(D-E)b、A+B*C /D-Ec、(A+B*C)/D-Ed、A+B*C/(D-E)( )2.若某链表中最常用的操作是在最后一个结点之后插入一个结点和删除第一个结点,则采用________存储方式最节省运算时间(假设链表仅设有一个first指针)。

a. 单链表b. 带头结点的双循环链表c. 单循环链表d. 双链表( )3.设一个栈的输入序列为A,B,C,D,则所得到的输出序列不可能是_______。

a. A,B,C,Db. D,C,B,Ac. A,C,D,Bd. D,A,B,C( )4.若线性表最常用的操作是存取第i个元素及其直接前驱的值,则采用_____存储方式节省时间。

a.顺序表 b.双链表 c.单循环链表 d.单链表( )5.若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为_______。

(1≤i≤n+1)a、O(0)b、O(1)c、O(n)d、O(n2)( )6.若指针L指向一带头结点的循环单链表的头结点,该表为空表的条件是_______为真值;a. !( L -> link );b. L == (L -> link) -> link;c. L -> link;d. L == L -> link;( )7.用数组A[0..N-1]存放一个循环队列,一元素出队时,其队头指针front的修改方法是________:a. front = (front + 1) mod N;b. front = (front - 2)mod N;c. front = front + 1;d. front = front – 2;( )8.若用Head()和Tail()分别表示取广义表的表头和表尾,广义表A=(1,2,(3,4),(5,(6,7))),则Head(Tail(Head(Tail(Tail(A))))) 。

数字逻辑第一次大作业

数字逻辑第一次大作业

一.“七段数码管字形发生器”真值表(支持共阴极,1亮0灭)二.卡诺图化简:三.在Quartus 中,建工程,采用原理图设计方法,画整体电路图,设定I/O ,编译纠错第一次编译出错,Input与Output中部分名称重复,改Input中“A”为“In-A”,B、C、D同理。

第二次编译通过。

四.在Quartus中,对所设计的电路进行整体功能仿真:五.仅采用与非门实现的解决方案:根据摩根代换定律,将a~f的表达式改为与非式,在Quartus中重新用原理图的方法画出整体电路图,设定I/O,根据新表达式在电路中适当添加非门,编译纠错。

并对电路功能进行整体仿真。

六.支持共阳极数码管的解决方案:将a~f的输出信号按位取反。

即在各信号输出之前添加非门。

七.填写真值表:八.自定义三个4变量功能函数(不能重复前面的三变量函数功能),填写真值表:九.小结:首先明白了数码管工作原理后,通过写出a~f输出变量的表达式熟练了将真值表在卡诺图上表示的方法。

(由于BD字样不易显示,选用小写b和d)之后在摸索中掌握了Quartus中原理图的使用方法。

第一次编译得知在定义名称时字母不区分大写小写,A与a 将被视为重复命名。

第二次只是有几个warnings,给忽略了。

进行仿真时,由于和原理图设计是分两次进行的,在选择“Node Finder...”插入节点时系统没有自动选中我之前保存的bdf文件,显示“No node available”。

重新打开之前的工程文件重试后成功。

在仿真时不知道是否应该将ABCD连续设置16次分别观察是否显示0~F,还是将输入信号设为随即信号,整体观察。

后来一想没啥区别,后者逐个信号竖向观察就能知道显示的数字对不对,还更方便。

观察仿真波形发现,在固定输入信号时,确实输出的信号符合要求。

选做题没想出好方法,觉得只有同时连两条线路才可实现。

其实已开始对这个软件真是无从下手。

多亏几个朋友对我的帮助,我才掌握了基本使用方法。

对数学作业批语的思考

对数学作业批语的思考
设 针 对性 地 开 展 工 作 , 学 校 安 全 事 故 的 发 隐患 , 备的老化等 等都是导致学 校安全 把 事 故 发 生 的原 因。因此 , 校 主 管 安全 部 门 学 学校安 全事故是指在学校实施 的教育 生降到最低 , 至为零 。 甚 及时消除隐患 , 并制定相应的 教学活动或者 学校组织 的校外活动 中 , 以 二 、 针对 性 地 、 目的 地 开 展 安 全 教 要定期排查 , 有 有
作, 也是学校工作 的重 中之重 。如今 , 学校 安 全 事 故 , 防 安 全 事 故 的发 生重 在 防 范 , 预
3建立健 全规章制度 , . 强化责任 。俗话
安 全事 故 频 发 , 人 防不 胜 防 。 埘学 生 安 似 严 防 , 不 可避 免 地 有 不 可 预 见 的 隐 患 说 “ 令 面 也 没有规矩 , 不成方圆” 有 了完善的规章 ,

系列教 育活动使师生的安 全意识得到加
要 安全 第一” 的思 事故 ; 1 校 组织 的大 型活 动 中 出现 的 强 。其 次, 1. 学 让学生掌握基本的安全知识 , 增 待安 全问题 , 牢固树立 “ 想, 时刻保持 清醒的头脑 , 要抓细 、 抓严 抓 事故。 强 预 防 、 理 意 外 事 故的 能 力 。 处 抓全, 使学校安全工作真正深人到每位 由此可见 , 校安全事故 的发生具有 学 2加 强师德 教育 , 强教师 工作 的责 实 、 . 增 教师 、 每位学生 、 每个家庭之 中。 复杂性 、 长期性及不可预见性 。 安全是一个 任心 。加强教师对《 教师法》 《 、未成年人保
事 故 ;. 体 育课 上 或 运 动 会 上 出 现 的 事 送到学校 , 4在 学校 和老师就有 责任和 义务做 严把安全关 ,杜绝 食物 中毒等安全事故 的 好 学生 安 全 的敦 育和 监 护 。 那 么 怎样 帮 助 发生 。 故 ;. 5上文 化课 和实 验课 时 出 现 的事 敞 ; 6劳 动 和卫 生 扫 除 时 出现 的 事故 ;. 生 之 学 生树 立 安 全 意 识 呢 ? 首 先 , 得 安 全 的 . 7学 懂

现代密码学总结

现代密码学总结

现代密码学总结现代密码学总结第⼀讲绪论1、密码学是保障信息安全的核⼼2、安全服务包括:机密性、完整性、认证性、不可否认性、可⽤性3、⼀个密码体制或密码系统是指由明⽂(m或p)、密⽂(c)、密钥(k)、加密算法(E)和解密算法(D)组成的五元组。

4、现代密码学分类:(1)对称密码体制:(⼜称为秘密密钥密码体制,单钥密码体制或传统密码体制)密钥完全保密;加解密密钥相同;典型算法:DES、3DES、AES、IDEA、RC4、A5 (2)⾮对称密码体制:(⼜称为双钥密码体制或公开密钥密码体制)典型算法:RSA、ECC第⼆讲古典密码学1、代换密码:古典密码中⽤到的最基本的处理技巧。

将明⽂中的⼀个字母由其它字母、数字或符号替代的⼀种⽅法。

(1)凯撒密码:c = E(p) = (p + k) mod (26)p = D(c) = (c –k) mod (26)(2)仿射密码:明⽂p ∈Z26,密⽂c ∈Z26 ,密钥k=(a,b)ap+b = c mod (26)(3)单表代换、多表代换Hill密码:(多表代换的⼀种)——明⽂p ∈(Z26)m,密⽂c ∈(Z26)m,密钥K ∈{定义在Z26上m*m的可逆矩阵}——加密 c = p * K mod 26解密p = c * K-1 mod 26Vigenere密码:查表解答(4)转轮密码机:2、置换密码:将明⽂字符按照某种规律重新排列⽽形成密⽂的过程列置换,周期置换3、密码分析:(1)统计分析法:移位密码、仿射密码和单表代换密码都没有破坏明⽂的频率统计规律,可以直接⽤统计分析法(2)重合指数法完全随机的⽂本CI=0.0385,⼀个有意义的英⽂⽂本CI=0.065实际使⽤CI 的估计值CI ’:L :密⽂长。

fi :密⽂符号i 发⽣的数⽬。

第三讲密码学基础第⼀部分密码学的信息论基础1、 Shannon 的保密通信系统模型(1)对称密码体制(2)(3)⼀个密码体制是⼀个六元组:(P , C, K 1, K 2, E, D )P--明⽂空间C--密⽂空间K 1 --加密密钥空间 K 2--解密密钥空间E --加密变换D --解密变换对任⼀k ∈K 1,都能找到k’∈K 2,使得D k’ (E k (m ))=m ,?m ∈M.2、熵和⽆条件保密(1)设随机变量X={xi | i=1,2,…,n}, xi 出现的概率为Pr(xi) ≧0, 且, 则X 的不确定性或熵定义为熵H(X)表⽰集X 中出现⼀个事件平均所需的信息量(观察前);或集X 中每出现⼀个事件平均所给出的信息量(观测后).(2)设X={x i |i=1,2,…,n}, x i 出现的概率为p (x i ) ≥0,且∑i=1,…,n p (x i )=1;0 )(1log )()(≥=∑ii ai x p x p X HY={y i |i=1,2,…,m}, y i 出现的概率为p (y i ) ≥0,且∑i=1,…,m p (y i )=1; 则集X 相对于集Y 的条件熵定义为(3) X 视为⼀个系统的输⼊空间,Y 视为系统的输出空间,通常将条件熵H (X|Y)称作含糊度,X 和Y 之间的平均互信息定义为:I (X,Y)=H (X)-H (X|Y) 表⽰X 熵减少量。

练习——简答题

练习——简答题

练习——简答题1.什么是算法?算法有哪些特征?答:算法是求解问题的⼀系列计算步骤。

算法具有有限性、确定性、可⾏性、输⼊性和输出性5个重要特征。

2.算法设计应满⾜的⼏个⽬标答:算法设计应满⾜正确性、可使⽤性、可读性、健壮性和⾼效率与低存储量需求。

3.算法设计的基本步骤答:算法设计的基本步骤是:(1)分析求解问题(2)选择数据结构和算法设计策略(3)描述算法(4)证明算法正确性(5)算法分析各步骤之间存在循环和反复过程。

4.什么是算法复杂性?它主要有哪两个⽅⾯构成?答:算法复杂性是算法运⾏时所需要的计算机资源的量,它包括两个⽅⾯:时间复杂性(需要时间资源的量)和空间复杂性(需要空间资源的量)。

5.分析算法复杂性的意义是什么?算法的复杂性是算法效率的度量,是评价算法优劣的重要依据。

⼀个算法的复杂性的⾼低体现在运⾏该算法所需要的计算机资源的多少上⾯,所需的资源越多,我们就说该算法的复杂性越⾼;反之,所需的资源越低,则该算法的复杂性越低。

6.f(n)=O(g(n))答:f(n)=O(g(n))当且仅当存在正常量c和n0,使当n≥n0时,f(n)≤cg(n),即g(n)为f(n)的上界。

7.f(n)=W(g(n))答:f(n)=W(g(n))当且仅当存在正常量c和n0,使当n≥n0时,f(n)≥cg(n),即g(n)为f(n)的下界。

8.f(n)=Q(g(n))答:f(n)=Q(g(n))当且仅当存在正常量c1、c2和n0,使当n≥n0时,有c1g(n)≤f(n)≤c2g(n),即g(n)与f(n)的同阶。

9.算法的平均情况、最好情况、最坏情况,哪种情况的可操作性最好,最具有实际价值?答:设⼀个算法的输⼊规模为n,Dn是所有输⼊的集合,任⼀输⼊I∈Dn,P(I)是I出现的概率,有 =1,T(I)是算法在输⼊I下所执⾏的基本语句次数,则该算法的平均执⾏时间为:A(n)=算法的最好情况为:G(n)= ,是指算法在所有输⼊I下所执⾏基本语句的最少次数。

计算复杂性理论总结报告

计算复杂性理论总结报告

人生有几件绝对不能失去的东西:自制的力量,冷静的头脑,希望和信心 1计算复杂性理论总结报告一、 图灵机(1) 图灵机基本模型图灵机是山图灵(Alan Mathisom Turing)在1936年提出的,它是一个通用的计算 模型。

通过图灵机,来研究递归可枚举集和部分递归函数,对算法和可计算性进行研究 提供了形式化描述工具。

图灵机的基本模型包括一个有穷控制器,一条含有无数个带方格的输入带和一个读 写头。

其直观物理模型如下图1所示。

基本图灵动作有以下三种:(1) 改写被扫描带方格内容,控制器转化为下一状态。

(2) 读写头向左移一个带方格,控制器转化为下一状态。

(3) 读写头向左移一个带方格,控制器转化为下一状态。

图1图灵机(2) 图灵机形式化定义,图灵机演算过程及语言描述定义:一个基本图灵机定义为一个七元组TM={Q,C,6,A.B,ql,F)o 其中Q 是状态集合,(图灵机所有的状态)非空有限集;C 是带符号表,(放在带方格中的符号集合)非空集;6是控制函数或过程转换函数(定义控制器)6: QxCTQxCU (R.L); A 是输入字母表,ACC ;B 是空白符,BGC :ql 是初始状态,qlSQ ;F 是终态集,F £ Q.TM 的扫描符号串主要山6来确定:(1)5 (q, s)二(q‘,s'); (2)8 (q, s) =(q* , R); (3)8 (q, s) =(q* , L); (4) 6 (q, s)无效,对应无定义时图灵机终止。

TM 的工作用“格局”的转换来描述。

格局:6 ala2a3...aj-lqajaj+l...其中 qWQ, aiGC ;帯(1)若8 (q, ai)无定义,称o为停机格局;(2)若qEF,称o为接受格局;人生有几件绝对不能失去的东西:自制的力量,冷静的头脑,希望和信心__(3) 若q为初始状态,称o为初始格局;格局O到格局T的转换a 卜mt 若成立go 1 |~mlo2 卜m2。

中科院计算机算法分析与设计_习题1-2_答案

中科院计算机算法分析与设计_习题1-2_答案

2)证明:除结点v外,只有当结点w满足s[w]=0时才被压入栈中,因此每 个结点至多有一次被压入栈中,搜索不会出现重叠和死循环现象,对于每
template<class T> bool MinMax(T a[], int n, int& Min, int& Max) { if(n<1) return false; Min=Max=0; //初始化 for(int i=1; i<n; i++){ if(a[Min]>a[i]) Min=i; if(a[Max]<a[i]) Max=i; } return true; } 最好,最坏,平均比较次数都是 2*(n-1)
2-连通
割点
4 5
D E
4 5
(1,2,3,4,0,0,0) (1,1,1,4,1,0,0)
{(C,D)};
C
6
F
6
(1,1,1,4,1,6,0)
7
G
7
(1,1,1,4,1,5,5)
(E,A), {(G,E),(F,G), (E,F)} (B,C), (A,B) {(E,A),(B,C),(A,B)}
3.设G是具有n个顶点和m条边的无向图,如果G是连通的,而且满足m = n-1,
证明G是树。 4.假设用一个n×n的数组来描述一个有向图的n×n邻接矩阵,完成下面工作

1)编写一个函数以确定顶点的出度,函数的复杂性应为 2)编写一个函数以确定图中边的数目,函数的复杂性应为 3)编写一个函数删除边(i,j),并确定代码的复杂性。 5.实现图的D-搜索算法。要求用ALGEN语言写出算法的伪代码, 或者用一种计算机高级语言写出程序。 ; (n)

算法的计算复杂性概念

算法的计算复杂性概念

算法的计算复杂性概念
计算复杂性是一个相当普遍的概念,用来衡量算法的复杂程度及其所需要的计算和存储资源。

它指出了通过解决一个特定问题所需要的资源数量和时间,是计算机科学领域中应用非常广泛的计算时间和空间复杂度理论。

计算复杂性的基本思想是:给定的算法的运行时间,由其所执行的基本步骤的重复次数决定。

这些步骤机会包括读写输出、内存操作、比较和逻辑判断等。

每一次的重复,都会消耗算法所需的资源。

算法的运行时间,在某程度上可以用消耗的资源数量来衡量。

计算复杂性概念被用来衡量算法空间和时间复杂度,以及评价算法效率,它是一种定量量度。

运行时间和空间复杂度由大O表示法来表示,Big O表示法在数学里描述函数增加量的时候,使用主要步骤多少来表示算法的复杂程度。

算法中最耗时的基本步骤是核心步,而计算复杂性可以衡量算法的效率,并评估算法的运行性能。

计算复杂性的概念历经多年,今天已经成为计算机科学领域的核心技术,深受计算性能分析专家、软件开发者和算法设计者的重视。

它不仅能够帮助识别算法效率的关键瓶颈,而且能够用精准的度量标准来比较两个算法的性能,帮助推进算法的改进,提高计算性能。

因此计算复杂性是一个极为重要的计算机科学概念,它能够用精确的方式衡量算法的复杂程度,用于评估算法的性能,以及帮助算法设计者和开发者识别算法缺陷并进行改进。

计算理论计算复杂性ppt课件

计算理论计算复杂性ppt课件
((x1)x2(x3)) (x2(x3)x4x5) ((x4)x5) • 合取范式cnf (conjunctive normal form)
3cnf: 每个子句文字数不大于3, 2cnf: 每个子句文字数不大于2
可满足问题SAT
• 可满足性问题: SAT = { <> | 是可满足的布尔公式 }
• 思想: 将字符串对应到布尔公式 利用接受的形式定义.
• 过程: 任取ANP, 设N是A的nk时间NTM. w(|w|=n), N接受w
N有长度小于nk的接受格局序列 能填好N在w上的画面(一个nknk表格) f(w)可满足 • 结论: SAT是NP完全的
N接受w能填好N在w上的画面
# q0 w0 w1 … wn #
2)若0,1都在带上,重复以下步骤. O(n)
3) 检查带上0,1总数的奇偶性,
若是奇数,就拒绝.
O(n) log n
4) 再次扫描带,
第1个0开始,隔1个0删除1个0; O(n)
第1个1开始,隔1个1删除1个1.
总时间:
5)若带上同时没有0和1,则接受. O(n) O(nlogn)
否则拒绝.”
{0k1k|k0}TIME(nlogn)
快速验证
HP = {<G,s,t>|G是包含从s到t的 哈密顿路径的有向图}
CLIQUE={<G,k>|G是有k团的无向图} 目前没有快速算法,但其成员是可以快速验证的. 注意:HP的补可能不是可以快速验证的. 快速验证的特点: 1. 只需要对语言中的串能快速验证. 2. 验证需要借助额外的信息:证书,身份证.
• 二元可满足性问题: 2SAT = { <> | 是可满足的2cnf }

c语言第一次作业

c语言第一次作业

c语⾔第⼀次作业⼀、PTA实验作业题⽬1.温度转换本题要求编写程序,计算华⽒温度150°F对应的摄⽒温度。

计算公式:C=5×(F−32)/9,式中:C表⽰摄⽒温度,F表⽰华⽒温度,输出数据要求为整型。

1.实验代码int fahr,celsius;fahr = 150;celsius = 5*(fahr-32)/9;printf("fahr = 150, celsius = %d\n",celsius);2 设计思路主要描述题⽬算法。

第⼀步:定义华⽒温度fahr和摄⽒温度celsius第⼆步:输⼊题⽬中给定的华⽒温度150第三步:写出计算公式celsius = 5*(fahr-32)/9第四步:输出fahr和celsius的值3.本题调试过程碰到问题及解决办法错误:单词stdio拼写错误,写成studio。

解决⽅法:从头看了⼀下程序,发现错误之后改掉,继续看⼀下有没有其他错误,提交后答案正确。

4.本题PTA实验结果题⽬2.将x的平⽅赋值给y假设x的值为3,计算x的平⽅并赋值给y,分别以“y = x ∗ x”和“x ∗ x = y”的形式输出x和y的值。

1.实验代码int x,y;x=3;y=x*x;printf("%d = %d * %d\n",y,x,x);printf("%d * %d = %d",x,x,y);2. 设计思路主要描述题⽬算法。

第⼀步:定义整数x,y第⼆步:给出x的值x=3第三步:给出公式y=x*x第四步:输出9=3*3和3*3=93.本题调试过程碰到问题及解决办法(1)误解题⽬,认为是输出y=3*3和3*3=y解决⽅法:重新阅读了⼏遍题⽬,改了多次并与同学交流讨论理解题⽬意思(2)错误:没有⽤公式y=x*x,直接在输出语句中计算y解决⽅法:多次修改,试了⼏遍,根据提交后给出的错误的提⽰⼀直调试,最后终于答案正确。

数值分析知到章节答案智慧树2023年齐鲁工业大学

数值分析知到章节答案智慧树2023年齐鲁工业大学

数值分析知到章节测试答案智慧树2023年最新齐鲁工业大学第一章测试1.判断数值算法的指标是计算复杂性,分为时间复杂性和空间复杂性。

()参考答案:对2.无论问题是否病态,只要算法稳定都能得到好的近似值。

()参考答案:错3.下面()不是数值计算应注意的问题参考答案:要尽量消灭误差4.作为的近似值,其有效数字的位数为()参考答案:35.设的相对误差为,则的误差为()参考答案:第二章测试1.是关于节点的拉格朗日插值基函数,则对任何次数不大于的多项式都有。

()参考答案:对2.对给定的数据作插值,插值函数个数可以许多。

()参考答案:错3.过点的插值多项式是()次的多项式参考答案:54.分段插值方法的提出是要避免()参考答案:Runge现象发生5.拉格朗日插值多项式,牛顿插值多项式的余项分别是()参考答案:,第三章测试1.n+1个节点的求积公式的最高代数精度为n+2 。

()参考答案:错2.用数值微分公式求导数值时,步长越小计算就越精确。

()参考答案:错3.形如的高斯型求积公式的代数精度为()参考答案:54.在牛顿—柯特斯求积公式中,当系数是负值时,公式稳定性不能保证,所以实际应用中,当()时的牛顿—柯特斯求积公式不使用。

参考答案:5.5个节点的牛顿—柯特斯求积公式,至少具有()次代数精度参考答案:5第四章测试1.一个单位下三角矩阵的逆仍为单位下三角矩阵。

()参考答案:对2.范数为0的矩阵一定是零矩阵。

()参考答案:对3.解线性方程组的主元素消去法中选择主元的目的是()参考答案:控制舍入误差4.用列主元消去法解线性方程组,第一次消元,选择主元为()参考答案:-45.设矩阵A的LU分解如下:,则该分解式中a,b的值分别为()参考答案:第五章测试1.不动点迭代法总是线性收敛的。

()参考答案:错2.牛顿法是不动点迭代的一个特例。

()参考答案:对3.用一般迭代法求方程的根,将方程表示为同解方程的,则的根是()参考答案:与的交点的横坐标4.解方程组的简单迭代格式收敛的充要条件是()。

北航硕士研究生数值分析大作业一

北航硕士研究生数值分析大作业一

数值分析—计算实习作业一学院:17系专业:精密仪器及机械姓名:张大军学号:DY14171142014-11-11数值分析计算实现第一题报告一、算法方案算法方案如图1所示。

(此算法设计实现完全由本人独立完成)图1算法方案流程图二、全部源程序全部源程序如下所示#include <iostream.h>#include <iomanip.h>#include <math.h>int main(){double a[501];double vv[5][501];double d=0;double r[3];double uu;int i,k;double mifayunsuan(double *a,double weiyi);double fanmifayunsuan(double *a,double weiyi);void yasuo(double *A,double (*C)[501]);void LUfenjie(double (*C)[501]);//赋值语句for(i=1;i<=501;i++){a[i-1]=(1.64-0.024*i)*sin(0.2*i)-0.64*exp(0.1/i);}//程序一:使用幂方法求绝对值最大的特征值r[0]=mifayunsuan(a,d);//程序二:使用幂方法求求平移λ[0]后绝对值最大的λ,得到原矩阵中与最大特征值相距最远的特征值d=r[0];r[1]=mifayunsuan(a,d);//比较λ与λ-λ[0]的大小,由已知得if(r[0]>r[1]){d=r[0];r[0]=r[1];r[1]=d;}//程序三:使用反幂法求λr[2]=fanmifayunsuan(a,0);cout<<setiosflags(ios::right);cout<<"λ["<<1<<"]="<<setiosflags(ios::scientific)<<setprecision(12)<<r[0]<<endl;cout<<"λ["<<501<<"]="<<setiosflags(ios::scientific)<<setprecision(12)<<r[1]<<endl;cout<<"λ[s]="<<setiosflags(ios::scientific)<<setprecision(12)<<r[2]<<endl;//程序四:求A的与数u最接近的特征值for(k=1;k<40;k++){uu=r[0]+k*(r[1]-r[0])/40;cout<<"最接近u["<<k<<"]"<<"的特征值为"<<setiosflags(ios::scientific)<<setprecision(12)<<fanmifayunsuan(a,uu)<<endl;}//程序五:谱范数的条件数是绝对值最大的特征值除以绝对值最小的特征值的绝对值cout<<"cond(A)2="<<fabs(r[0]/r[2])<<endl;//程序六:A的行列式的值就是A分解成LU之U的对角线的乘积yasuo(a,vv);LUfenjie(vv);uu=1;for(i=0;i<501;i++){uu=uu*vv[2][i];}cout<<"Det(A)="<<uu<<endl;return 1;}double mifayunsuan(double *a,double weiyi){int i,k;double b=0.16;double c=-0.064;double ee,w,v1,v2,mm,sum;double u[501];double y[505]={0};for(i=0;i<501;i++)u[i]=1;//给u赋初值if (weiyi!=0){for (i=0;i<501;i++)a[i]-=weiyi;}ee=1;k=0;//使得初始计算时进入循环语句while(ee>1e-12){mm=0;for(i=0;i<501;i++){mm=mm+u[i]*u[i];}w=sqrt(mm);for(i=0;i<501;i++){y[i+2]=u[i]/w;//注意此处编程与书上不同,之后会解释它的巧妙之处1 }for(i=0;i<501;i++){u[i]=c*y[i]+b*y[i+1]+a[i]*y[i+2]+b*y[i+3]+c*y[i+4];//1显然巧妙之处凸显出来}sum=0;for(i=0;i<501;i++){sum+=y[i+2]*u[i];}v1=v2;v2=sum;//去除特殊情况,减少漏洞if(k==0){k++;}else{ee=fabs(v2-v1)/fabs(v2);}}if (weiyi!=0){for (i=0;i<501;i++)a[i]+=weiyi;}//还原A矩阵return (v2+weiyi);}double fanmifayunsuan(double *a,double weiyi){int i,k;double b=0.16;double c=-0.064;double ee,w,v1,v2,mm,sum;double u[501];double y[501];double C[5][501];void yasuo(double *A,double (*C)[501]);void LUfenjie(double (*C)[501]);void qiuU(double (*C)[501],double *y,double *u);//把A阵压缩到C阵中for(i=0;i<501;i++)u[i]=1;//给u赋初值if (weiyi!=0){for (i=0;i<501;i++)a[i]-=weiyi;}yasuo(a,C);LUfenjie(C);ee=1;k=0; //使得初始计算时进入循环语句while(ee>1e-12){mm=0;for(i=0;i<501;i++){mm=mm+u[i]*u[i];}w=sqrt(mm);for(i=0;i<501;i++){y[i]=u[i]/w;}qiuU(C,y,u);sum=0;for(i=0;i<501;i++){sum+=y[i]*u[i];}v1=v2;v2=sum;//去除特殊情况,减少漏洞if(k==0){k++;}else{ee=fabs(1/v2-1/v1)/fabs(1/v2);}}if (weiyi!=0){for (i=0;i<501;i++)a[i]+=weiyi;}//还原A矩阵return (1/v2+weiyi);}void yasuo(double *A,double (*C)[501]){double b=0.16;double c=-0.064;int i;for(i=0;i<501;i++){C[0][i]=c;C[1][i]=b;C[2][i]=A[i];C[3][i]=b;C[4][i]=c;}}void LUfenjie(double (*C)[501]){int k,t,j;int r=2,s=2;double sum;int minn(int ,int );int maxx(int ,int );for(k=0;k<501;k++){for(j=k;j<=minn(k+s,501-1);j++){if(k==0)sum=0;else{sum=0;for(t=maxx(k-r,j-s);t<k;t++){sum=sum+C[k-t+s][t]*C[t-j+s][j];}}C[k-j+s][j]=C[k-j+s][j]-sum;}for(j=k+1;j<=minn(k+r,501-1);j++){if(k<501-1){if(k==0)sum=0;else{sum=0;for(t=maxx(j-r,k-s);t<k;t++){sum=sum+C[j-t+s][t]*C[t-k+s][k];}}C[j-k+s][k]=(C[j-k+s][k]-sum)/C[s][k];}}}}void qiuU(double (*C)[501],double *y,double *u){int i,t;double b[501];double sum;int r=2,s=2;int minn(int ,int );int maxx(int ,int );for(i=0;i<501;i++){b[i]=y[i];}for(i=1;i<501;i++){sum=0;for(t=maxx(0,i-r);t<i;t++){sum=sum+C[i-t+s][t]*b[t];}b[i]=b[i]-sum;}u[500]=b[500]/C[s][500];for(i=501-2;i>=0;i--){sum=0;for(t=i+1;t<=minn(i+s,500);t++){sum=sum+C[i-t+s][t]*u[t];}u[i]=(b[i]-sum)/C[s][i];}}int minn(int x,int y){int min;if(x>y)min=y;elsemin=x;return min;}int maxx(int b,int c){int max;if(b>c){if(b>0)max=b;elsemax=0;}else{if(c>0)max=c;elsemax=0;}return max;}三、特征值以及的值λ[1]=-1.070011361502e+001 λ[501]=9.724634098777e+000λ[s]=-5.557910794230e-003最接近u[1]的特征值为-1.018293403315e+001最接近u[2]的特征值为-9.585707425068e+000最接近u[3]的特征值为-9.172672423928e+000最接近u[4]的特征值为-8.652284007898e+000最接近u[5]的特征值为-8.0934********e+000最接近u[6]的特征值为-7.659405407692e+000最接近u[7]的特征值为-7.119684648691e+000最接近u[8]的特征值为-6.611764339397e+000最接近u[9]的特征值为-6.0661********e+000最接近u[10]的特征值为-5.585101052628e+000最接近u[11]的特征值为-5.114083529812e+000最接近u[12]的特征值为-4.578872176865e+000最接近u[13]的特征值为-4.096470926260e+000最接近u[14]的特征值为-3.554211215751e+000最接近u[15]的特征值为-3.0410********e+000最接近u[16]的特征值为-2.533970311130e+000最接近u[17]的特征值为-2.003230769563e+000最接近u[18]的特征值为-1.503557611227e+000最接近u[19]的特征值为-9.935586060075e-001最接近u[20]的特征值为-4.870426738850e-001最接近u[21]的特征值为2.231736249575e-002最接近u[22]的特征值为5.324174742069e-001最接近u[23]的特征值为1.052898962693e+000最接近u[24]的特征值为1.589445881881e+000最接近u[25]的特征值为2.060330460274e+000最接近u[26]的特征值为2.558075597073e+000最接近u[27]的特征值为3.080240509307e+000最接近u[28]的特征值为3.613620867692e+000最接近u[29]的特征值为4.0913********e+000最接近u[30]的特征值为4.603035378279e+000最接近u[31]的特征值为5.132924283898e+000最接近u[32]的特征值为5.594906348083e+000最接近u[33]的特征值为6.080933857027e+000最接近u[34]的特征值为6.680354092112e+000最接近u[35]的特征值为7.293877448127e+000最接近u[36]的特征值为7.717111714236e+000最接近u[37]的特征值为8.225220014050e+000最接近u[38]的特征值为8.648666065193e+000最接近u[39]的特征值为9.254200344575e+000cond(A)2=1.925204273902e+003 Det(A)=2.772786141752e+118四、现象讨论在大作业的程序设计过程当中,初始向量的赋值我顺其自然的设为第一个分量为1,其它分量为0的向量,计算结果与参考答案存在很大差别,计算结果对比如下图2所示(左侧为正确结果,右侧为错误结果),导致了我花了很多的时间去检查程序算法。

2020年中国石油大学北京网络学院 数据结构-第一次在线作业 参考答案

2020年中国石油大学北京网络学院 数据结构-第一次在线作业 参考答案
C、算法的可行性是指指令不能有二义性
D、以上几个都是错误的
我的答案:D 此题得分:2.5分
6.(2.5分) 下面说法错误的是
A、算法原地工作的含义是指不需要任何额外的辅助空间
B、在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法
C、所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界
我的答案:A 此题得分:2.5分
23.(2.5分) 完成在双循环链表结点p之后插入s的操作是( )
A、p^.next:=s ; s^.priou:=p; p^.next^.priou:=s ; s^.next:=p^.next;
B、p^.next^.priou:=s; p^.next:=s; s^.priou:=p; s^.next:=p^.next;
A、P^.NEXT:=H
B、P^.NEXT:= H^.NEXT
C、P:=H
D、P:=H^.NEXT
我的答案:A 此题得分:2.5分
22.(2.5分) 在一个以 h 为头的单循环链中,p 指针指向链尾的条件是()
A、p^.next=h
B、p^.next=NIL
C、p^.next.^next=h
D、p^.data=-1
A、单链表
B、双链表
C、单循环链表
D、带头结点的双循环链表
我的答案:D 此题得分:2.5分
18.(2.5分) 链表不具有的特点是( )
A、插入、删除不需要移动元素
B、可随机访问任一元素
C、不必事先估计存储空间
D、所需空间与线性长度成正比
我的答案:B 此题得分:2.5分
19.(2.5分) 线性表( a1,a2,…,an)以链接方式存储时,访问第i位置元素的时间复杂性为( )

清华大学大数据算法基础知识第一次作业

清华大学大数据算法基础知识第一次作业

6 q = ⌊(p+r)/2⌋
7 if A[q] = v
8 return q
9 else if A[q] < v
10 return BINARY(A,p,q-1,v)
11 else
12 return BINARY(A,q+1,r,v)
然后将二分查找替换掉 INSERTION-SORT 中的线性查找部分
2
(log ������)(log ������)和������log(log ������) (log ������)! ������3 ������2和4log ������ nlog ������ 和 log(������!) n和2log ������
(√2)log ������
log2 ������ ln ������ √log ������ ln ln ������ 2log∗ ������ log∗ ������和log∗(log ������) log(log∗ ������)
思路如下:首先画出递推树如下:
观察该递推树可以发现:该树每次将原问题规模变为原来的一半,为了方便求证,假设 n 是 2 的幂,可以得到树的长度为 k,而2������−1 = ������,所以k = log ������ + 1.而每一层的代价为 (3/2)������������,可以得到总代价为:
解毕。
n ������������������3 ⌊2⌋

2
n ⌊2⌋
+
2)
+
n

cn������������������3

3n
+
n

3
+

算法设计分析期末考试试卷

算法设计分析期末考试试卷

2011 年 12 月考试算法设计分析第一次作业一、单项选择题(本大题共 30 分,共 15 小题,每小题 2 分)1. 算法分析的两个主要方面是()。

A. 空间复杂度和时间复杂度B. 正确性和简单性C. 可读性和文档性D. 数据复杂度和程序复杂度2. 计算机算法指的是()。

A. 计算方法B. 排序方法C. 解决问题的方法和过程D. 调度方法3. 多阶段决策问题就是要在可以选择的那些策略中间选取一个()策略使在预定的标准下达到最好的效果。

A. 最优B. 最差C. 平衡D. 任意4. 根据排序元素所在位置的不同,排序分()。

A. 内排序和外排序B. 首排序和尾排序C. 顺序排序和逆序排序D. 堆排序和栈排序5. 算法必须具备输入、输出和()等 5 个特性。

A. 可执行性、可移植性和可扩充性B. 可行性、确定性和有穷性C. 确定性、有穷性和稳定性D. 易读性、稳定性和安全性6. 与分治法不同的是,适合于用动态规划求解的问题()A. 经分解得到子问题往往不是互相独立的B. 经分解得到子问题往往是互相独立的C. 经分解得到子问题往往是互相交叉的D. 经分解得到子问题往往是任意的7. 二分搜索算法的基本思想是将 n 个元素分成个数大致相同的两半,取 an/2与 x 进行比较:如果(),则只要在数组 a 的左半部继续搜索 x。

A. x<an/2B. xan/2C. xan/2D. xan/28. 活动安排问题就是在所给的活动集合中,选出()的相容活子集。

A. 最小B. 任意C. 最大D. 一个9. 在对问题的解空间树进行搜索的方法中一个活结点最多有一次机会成为活结点的是()A. 回溯法B. 分支限界法C. 回溯法和分支限界法D. 回溯法求解子集树问题10. 适用动态规划的问题必须满足()A. 最优化原理B. 无前效性C. 最优化原理和后效性D. 最优化原理和无后效性11. 算法的每种运算必须要有确切的定义不能有二义性以下符合算法确定性运算的是()A. 5/0B. 将 6 或 7 与 x 相加C. 未赋值变量参与运算D. fnfn-12F110n 为自然数12.直接或间接的调用自身的算法称为()。

项目管理A离线作业

项目管理A离线作业

项目管理A离线作业 Revised by BETTY on December 25,2020项目管理A第一次作业四、主观题(共19道小题)20.项目---项目(Project)是一个特殊的将被完成的有限任务,它是在一定的时间内,满足一系列特定目标的多项相关工作的总称。

21.项目管理---项目管理(PM,Project Management)是以项目为对象的系统管理方法,是通过一个临时性的专门的柔性组织,对项目进行高效率的计划、组织、指导和控制,以实现项目全过程的动态管理和项目目标的综合协调与优化的过程。

22.PMBOK---PMBOK美国项目管理学会(PMI)开发的一套项目管理知识体系,简称为PMBOK(Pro ject Management Body of Knowledge)。

PMBOK将项目管理科学地划分为七个阶段:需求确定、项目选择、项目计划、项目执行、项目控制、项目评价和项目收尾。

PMBOK根据各个阶段的特点和所面临的主要问题,系统归纳了项目管理的九大知识领域,即:范围管理、时间管理、成本管理、人力资源管理、风险管理、质量管理、采购管理、沟通管理和综合管理,并分别对各领域的知识、技能、工具和技术作了全面总结。

23.项目的主要特征包括哪些在一个项目中是如何体现的24.项目的特征:时限性——每个项目都有一个明确的开始日期和完成项目的结束日期;目标确定性——每个项目都有明确的目标;一次性——每个项目都有一个明确的起点和终点,没有完全可以照搬的先例,也不会有完全相同的复制独特性(唯一性)——每个项目都有其独特的地方,没有两个项目会完全一样。

资源和任务的相互依赖性——每个项目都是由一系列相互关联的任务组成的,许多不重复的任务以一定的顺序完成,才能达到项目目标25.对比说明“项目”和“作业”的区别。

26.项目范围---项目范围即项目的工作范围,是指项目组织为了成功地完成项目,确保项目目标得以实现,生产出客户期望的产品或提供客户需要的服务,所必须完成的、而且仅限于必须要做的全部项目工作。

计算复杂性课后题

计算复杂性课后题
v V0
V1
V2
图7--7
因此G’里的边是这些(见图7—7;回忆通过无向线段连接顶点可更
方便地描绘无向图):
{(u2,v0),(v0,u2):(u,v)∈G}∪{(
v0,v1),(v1,
v0),(v1,v2),(v2,v1):v∈V}。即按照v0,v1,v2的顺序用通
路连接这三个顶点,并且每当(u,v)∈G时,在u2和v0就存在无向
…,v︳v︳),可如下地转换成G’的Hamilton圈:
(v10,v11,v12,v20,v21,v22,…,v0︳v︳,v1︳v︳,v2︳v︳)。我们得出结
论说,G有Hamilton圈当且仅当G’有Hamilton圈,证毕。
须属于这条圈,而且对(v1,v2)也是同样的。于是这条圈必须向前通
过边( v2,w0),其中( v,w) ∈G,从这里到w1, w2,到某个z0,其中
( w,z) ∈G,等等。因此在G’的这条Hamilton圈里形如(u0,v2)的
边事实上组成了G的Hamilton圈。反之,G的任何Hamilton圈(v1,v2,
定理7.2.3 三元可满足性是NP完全的。 证明: 它当然属于NP,因为它是属于NP的问题的特殊情形。 为了证明完全性,我们把可满足性归约到三元可满足性上。这是相当 普通类型的归纳,在这里把问题归约到它自身的特殊情形上。通过证明 从一般问题的任意实例开始,我们设法消除妨碍这个 实例落进特殊情 形里的特性,这样的归约就可行了。在目前情况下我们必须证明从任意 子句集F出发,如何在多项式时间里得到在每个子句里最多有三个文字 的子句集t(F).
把两个b托出栈
M={{s,q,f},{a,b},{a,b,#},△,s,{f}},其中
△={((s,e,e),(q,#)), 推入#,转到状态q

制作小飞机的感想

制作小飞机的感想

制作小飞机的感想近期我参与了一个小飞机的制作项目,这是我第一次亲自动手制作一个飞行器,整个过程令我感到非常兴奋和有趣。

在这个项目中,我学到了很多知识和技能,也体会到了制作飞机的复杂性和挑战性。

制作小飞机需要一定的机械和电子基础知识。

在开始制作之前,我花了一些时间学习有关飞行器的原理和构造,包括飞机的气动学、机械结构和电子控制等方面的知识。

这些知识的掌握对于制作一个可靠且安全的小飞机非常重要。

制作小飞机需要一些常见的工具和材料。

在这个项目中,我使用了各种各样的工具,如锯子、钳子、螺丝刀等,用于切割、连接和调整飞机的各个部件。

同时,我还使用了一些常见的材料,如木板、塑料、铝合金等,用于制作飞机的机身、翼面和其他结构。

在制作过程中,我遇到了许多挑战和困难。

其中一个挑战是设计和制作飞机的机翼。

机翼是飞机的重要组成部分,对于飞机的飞行性能和稳定性有着重要影响。

为了设计出符合要求的机翼,我进行了大量的计算和试验,并使用了一些模拟软件来辅助设计。

最终,我成功地制作出了一个稳定且高效的机翼。

另一个挑战是电子控制系统的设计和调试。

为了让飞机能够实现远程控制和自动飞行,我需要设计一个复杂的电子控制系统,包括遥控器、接收器、飞行控制器和传感器等。

在制作过程中,我遇到了一些电子元件的故障和连接问题,但通过不断尝试和调试,最终成功地解决了这些问题。

制作小飞机的过程中,我不仅学到了技术知识,还培养了一些重要的能力和素质。

例如,我学会了团队合作和沟通,因为在制作过程中,我需要与其他团队成员密切合作,共同解决问题。

我还学会了耐心和细心,因为在制作过程中,一些细小的错误或疏忽可能会导致飞机无法正常飞行。

总的来说,制作小飞机是一项非常有趣和有挑战性的项目。

通过这个项目,我不仅学到了很多知识和技能,还培养了一些重要的能力和素质。

我相信这些经验将对我未来的学习和工作有很大的帮助。

我也期待能够参与更多类似的项目,继续探索飞行器制作的奥秘。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算复杂性第一次作业
周雄(1152220101)
March21,2018
题目1:
①对于00010,我们有如下瞬间描述迁移序列:
q000010B⊢0q00010B⊢00q010B⊢000q010B⊢0000q10B⊢00000q1B⊢000000q2(接受)
②对于001000,我们有如下瞬间描述序列:
q0001000B⊢0q001000B⊢00q01000B⊢000q1000B⊢0000q100B⊢00000q10B⊢
000000q1B⊢0000000q2(接受)
③对于0010001,我们有如下瞬间描述序列:
q00010001B⊢0q0010001B⊢00q010001B⊢000q10001B⊢0000q1001B⊢00000q101B⊢
000000q11B(停机)
题目2:
start
题目3:
①对于0011,我们有如下瞬间描述迁移序列:
q00011B⊢Xq1011B⊢X0q111B⊢Xq20Y1B⊢q2X0Y1B⊢Xq00Y1B⊢XXq1Y1B⊢
XXY q11B⊢XXq2Y Y B⊢Xq2XY Y B⊢XXq0Y Y B⊢XXY q3Y B⊢XXY Y q3B⊢
XXY Y Bq4(接受)
②对于0101,我们有如下瞬间描述序列:
q00101B⊢Xq1101B⊢q2XY01B⊢Xq0Y01B⊢XY q301B(停机)
③对于00111,我们有如下瞬间描述序列:
q000111B⊢Xq10111B⊢X0q1111B⊢Xq20Y11B⊢q2X0Y11B⊢Xq00Y11B⊢XXq1Y11B⊢XXY q111B⊢XXq2Y Y1B⊢Xq2XY Y1B⊢XXq0Y Y1B⊢XXY q3Y1B⊢XXY Y q31B(停机)题目4:
(1)
start
(其中x表示任意字符)
(2)
start
(其中N表示空白符)
题目5:
start
←|1/1←下面我们用反证法来证明L ={0n 1n 2n |n ≥1}不是上下文无关语言.证:
假设L 是上下文无关语言,那么存在整数N 。

取z =0N 1N 2N 。

由泵引理,z =uvwxy ,其中|vwx |≤N,vx =ε。

其中vwx 显然不能同时包含0,1或2的,否则|vwx |>|1N |≥N 。

如果vwx 只包含0,1或2,那么uwy 不在L 中;vwx 若只包含0和1,或只包含1和2,uwy 也不在L 中.而由于泵引理uwy =uv 0wx 0,y ∈L ,因此假设不成立,L 不是上下文无关的.
题目6:
start


题目7:
start
←|1/1←。

相关文档
最新文档