排序(二)【数据结构】
简单选择排序选择排序 不稳定核心思想每一趟找到待排序序列中最小的值以及找到待排序序列的第一个值进行交换即 每一趟就是找到待排序序列中的最小值通过交换的方式放到第一个位置上特别注意代码实现中本质是要找到他们的位置时间、空间复杂度时间复杂度O(n^2)空间复杂度O(1)代码实现//选择排序voidSelect_Sort(intarr[],intlen){for(inti0;ilen-1;i){intminIndexi;for(intji;jlen;j){if(arr[j]arr[minIndex])minIndexj;}inttmparr[i];arr[i]arr[minIndex];arr[minIndex]tmp;}}冒泡排序核心思想每一趟从前向后两两比较递增如果左边大于右边则交换反之不交换当这一趟跑完之后相当于最大值就被搬运到最后一个位置了改进如何在一趟两两比较完成后就立刻得知其是否已经完全有序放一个flag0若某一趟未交换则标记为1.代码实现//冒泡排序voidBubble_Sort(intarr[],intlen){for(inti0;ilen-1;i){intflag0;for(intj0;jlen-i-1;j){if(arr[j]arr[j1]){inttmparr[j];arr[j]arr[j1];arr[j1]tmp;flag1;}}if(flag0)break;}}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2422263.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!