中国大学MOOC-陈越、何钦铭-数据结构-起步能力自测题
5个自测题
清风笑。
这个作者很懒,什么都没留下…
展开
-
自测-1 打印沙漏
这个题目其实就是PAT 乙级1027题。思路:一个沙漏其实就是两个三角形合并而来的,找到这两个三角形的行数 就能按条件输出了,注意只需要在每一行前面输出空格个数,每一行的后面不需要!代码如下:...原创 2019-09-22 22:50:31 · 154 阅读 · 0 评论 -
自测-2 素数对猜想 (20 分)
实际题目为PAT 乙级 1007题思路:构建一个isprime函数来判断这个数是否为素数,在判断时有一个要点:就是循环的时候这个数除的数只要从2到这个数的平方根即可,不然会超时。注意:1不是素数要想有相邻且相差为2的素数对,这个数至少大于等于5代码如下:...原创 2019-09-22 22:55:56 · 191 阅读 · 0 评论 -
自测-3 数组元素循环右移问题 (20 分)
题目实际上为PAT乙级 1008题思路:一开始看上去觉得无从下手,不能构建数组,就想着构造函数来交换数的位置,后来发现 只要在输出时掌握规律 就很好下手了 :先把这个数列后面的输出了,再把这个数列前面的输出了 用2个for循环就能搞定。注意:当m大于等于n的时候要将 m=m%n 来处理 ,m大于等于n就会重复运算 没有必要代码如下:...原创 2019-09-22 23:01:09 · 454 阅读 · 1 评论 -
自测-4 Have Fun with Numbers (20 分)
题目实际上为PAT甲级1023题思路:因为这个数字最大能达到20位超过了long long的范围,因此选择用char数组来储存这个数。用for循环从这个数组的末尾开始计算,用另一个数组来储存乘以2的结果,a[i]-'0’即为这一位上这个数的值,乘以2后有可能大于0,所以设置一个进位变量flag ,flag=1下次运算就加一。建立一个数组b[10]储存每个数字的个数,在后面的循环中每次b[i...原创 2019-09-22 23:08:44 · 722 阅读 · 0 评论 -
自测-5 Shuffling Machine (20 分)
Shuffling is a procedure used to randomize a deck of playing cards. Because standard shuffling techniques are seen as weak, and in order to avoid “inside jobs” where employees collaborate with gambler...原创 2019-09-22 23:15:07 · 754 阅读 · 0 评论