JoeChenzzz

导航

2018年9月14日 #

直接插入排序

摘要: 思想 首先要明确的是,已排序序列在前,待排序序列在后,第一轮的待排序序列就是整个序列,每一轮将待排序序列中的首位元素插入到已排序序列的合适位置处,待排序序列元素个数减1,已排序序列元素个数加1,直到插完所有元素 代码实现 void sortInsert(vector<int> &nums) { in 阅读全文

posted @ 2018-09-14 16:57 JoeChenzzz 阅读(141) 评论(0) 推荐(0)

直接选择排序

摘要: 思想 首先要明确的是,已排序序列在前,待排序序列在后,第一轮的待排序序列就是整个序列,每一轮在待排序序列中选出本轮最小的元素放在待排序序列的首位,然后将这个首位纳入已排序序列,待排序序列元素数目相应减1;不断重复上述操作,直到已排序序列长度为数组长度 代码实现 时间复杂度 最好情况O(n2),最坏情 阅读全文

posted @ 2018-09-14 16:46 JoeChenzzz 阅读(131) 评论(0) 推荐(0)

冒泡排序

摘要: 思想 首先要明确的是,已排序序列在后,待排序序列在前,第一轮的待排序序列就是整个序列;每一轮都从待排序序列首部开始,比较相邻元素,如果前一个元素比后一个元素大,则交换两元素的位置,这么一轮下来,本轮最大的那个元素就到了末尾,成为已排序序列,待排序序列的元素个数相应减1,不断重复,最终达到完全有序 代 阅读全文

posted @ 2018-09-14 16:00 JoeChenzzz 阅读(130) 评论(0) 推荐(0)