冒泡排序算法
以前大学的时候总觉得算法很难记住,其实也不是,了解了原理,也并不难,只是那时候把问题看复杂了。
原理是:不断的拿左边那个数和右边那个数比较,只要在这个循环里左边那个数大于邮编那个数就代表本次循环有效,也就是这个数组还没有被完全排序完,因此进入下一轮循环,直到任意左边的数小于右边的数的时候,退出排序。
以下是我写的java代码:
public void testsort(int arr[]) { boolean flag; do{ flag = false; for(int i=0;i<arr.len;i++){ if(arr[i]>arr[i+1]) { arr = swap(arr,i); swap = true; } } }while(flag) } private int[] swape(int []arr,int i) { int temp = arr[i]; arr[i+1]=arr[i]; arr[i] = temp; return arr; }
伪代码为:
do swapped = false for i = 1 to numOfElements exclusive if leftElement > rightElement swap(leftElement, rightElement) swapped = true while swapped
其他算法会陆续更新,欢迎吐槽。
相关推荐
C# 常用经典算法,选择排序 冒泡排序 快速排序 插入排序 希尔排序
详解Java常用排序算法-冒泡排序
VC++实现的冒泡法排序 一种常用容易实现的排序算法
python冒泡排序 使用python实现常用算法,包括冒泡排序/选择排序/插入排序/归并排序/快速排序/堆排序/二分查找/并查集/最小生成树/最小路径
# sort.bubbleSort() #冒泡排序 # sort.shellSort() #希尔排序 # sort.insertionSort() #插入排序 # sort.Selectionsort1() #选择排序 # sort.heapSort() #堆排序 # sort.countSort() #计数排序 # sort....
嵌入式C语言常用算法范例,T1冒泡法排序,此文档为冒泡排序的一个非常使用的例子,简单移动的介绍了冒泡的算法。
选择排序算法、冒泡排序算法和插入排序算法的时间复杂度为O(n2),写法简单,逻辑易懂,但算力性价比不高,不适用于数据量较大时使用。 合并排序算法和快速排序算法采用了采用分治法、递归的方法,将时间复杂度降为...
六种内部排序算法比较:直接插入排序、希尔排序、冒泡排序、快速排序、选择排序、堆排序。包含实验报告和源代码设计。
各种常用c++排序算法,包括插入排序、冒泡排序、选择排序、快速排序、归并排序、希尔排序等
本文件是7种常用排序算法的实现(C++),包括冒泡排序、选择排序、直接插入排序、希尔排序、堆排序、归并排序以及快速排序。代码详细有注释且有测试用例。
C# 排序算法大全参考资料,比较清淅的一个版本。集中介绍了C#中的冒泡算法、选择排序、插入排序、希尔排序等常用算法,并包含示例代码和注意事项等。
用C++写了以上三种排序算法,对初学数据结构的同学一个参考
使用c语言比较几种常用排序的使用时间(归并排序、插入排序、归并排序、冒泡排序、选择排序)
冒泡排序python,实现了常用的排序算法,包括:冒泡排序、直接插入排序、直接选择排序、希尔排序、归并排序、快速排序、堆排序,基于python 3 编程实现
用java实现了以下算法: 1、冒泡排序、冒泡排序的两种改进。 2、插入排序。 3、选择排序。 4、希尔排序。 5、归并排序。 6、快速排序。
冒泡排序 冒泡排序是一种简单的排序算法,它的基本思想是通过不断交换相邻的元素,将较大的元素逐渐向后移动,直到整个序列有序为止。具体实现过程如下: ```python def bubble_sort(arr): n = len(arr) for i in ...
常用排序算法的动态演示系统的开发,演示冒泡排序法、快速排序法、直接插入排序法、折半插入排序法、树形选择排序法
在第一版的基础上新加了对冒泡排序,直接插入排序,直接选择排序,希尔排序,归并排序,快速排序和堆排序这七种常用的排序方法的总结篇,方便大家复习,合适作为笔试面试前的复习资料。
排序算法是一种基本并且常用的算法。由于实际工作中处理的数量巨大,所以排序算法 对算法本身的速度要求很高。 介绍一些排序的基本算法.包括交换法,冒泡法等等...
python常用排序算法 Python常用排序算法 排序算法是计算机科学中的基本算法之一,它是将一组数据按照一定的顺序进行排列的过程。在Python中,常用的排序算法有冒泡排序、选择排序、插入排序、快速排序、归并排序等。...