【本周总结】
1.冒泡排序
- 比较相邻的元素。如果第一个比第二个大,就交换他们两个。
- 对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
- 针对所有的元素重复以上的步骤,除了最后一个。
- 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
2.希尔排序
- 分隔一定数据选择两个数据进行比较,并排序。
- 后续数据依次与前面数据进行比较,并排序。
- 分隔数据逐渐减小,直至为一。
3.快速排序
- 从数列中挑出一个元素,称为“基准”(pivot)。
- 重新排序数列,所有比基准值小的元素摆放在基准前面,所有比基准值大的元素摆在基准后面(相同的数可以到任何一边)。
- 递归地(recursively)把小于基准值元素的子数列和大于基准值元素的子数列排序。
4.选择排序
- 选出数据里最小或最大的一个数,并将它放在数据的开头或结尾。
- 忽略上次挑选的数据,重复进行选择并放置。
5.归并排序
- 将数据进行分割,分成足够小的数据
- 对两两分割后的数据进行大小比较后合并成一个有序的数据
- 将分割的数据进行合并直至回到原来数据大小
【遇到的问题&思考】
1.系统问题
- 数据进行输出之后会发生乱码情况
- 代码无误的情况下系统崩溃
- 登录注册时空格的干扰
2.排序问题
- 排序的实际运用不熟
- 各种排序怎对不同问题的灵活应用
- 排序代码的实现