C语言II博客作业02

这个作业属于哪个课程 计科三班
这个作业要求在哪里 作业要求
我在这个课程的目标是 了解数组的使用方法
学号 20209033

2.1 完成PTA作业,并给出编程题完成截图(5分)

2.1.1年龄与疾病


2.1.2选择排序法

2.2 题目:快速寻找满足条件的两个数

2.2.1根据三种解法给出相应的代码,并给出测试数据。(15分)
解法一:采用穷举法,从数组中任意取出两个数字,计算两者之和是否为给定的数字。

解法二:对数组中的每个数字arr[i]都判别Sum-arr[i]是否在数组中。

解法三:对数组进行排序,然后使用二分查找法针对arr[i]查找Sum-arr[i]。

2.2.2请说明三种算法的区别是什么?你还可以给出更好的算法吗?(10分)
第一种方法运行速度慢,第二种方法相对较快,比第一种简单,第三种方法复杂但是使用范围更大

2.3 请搜索有哪些排序算法,并用自己的理解对集中排序算法分别进行描述(5分)

冒泡排序:两两交换,每次只交换相邻的两个元素,直到没有元素可以交换。
插入排序:通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。
选择排序:先确定最大或最小元素作为排序的起始和末尾位置,然后再慢慢跟着这样来,直到排列完毕。

2.4学习总结

2.4.1 学习进度条

这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
第一周 8 86 文件的使用 文件与程序的串联
第二周 9 95 数组的使用方法 算法的使用
2.4.2累积代码行和博客字数(5分)
2.4.3 学习内容
1.了解了一些简单的排序方式
2.使用数组进行编程
posted @ 2021-03-28 18:03  tangkuan  阅读(45)  评论(0编辑  收藏  举报