php冒泡排序函数】的更多相关文章

$arr=array(23,5,26,4,9,85,10,2,55,44,21,39,11,16,55,88,421,226,588); function maopao($arr,$value){//$value 1:从小到大的标志 2:从大到小的标志 $n=count($arr); for($h=0;$h<$n-1;$h++){ for($i=0;$i<$n-$h-1;$i++){ if($value==1){//从小到大 if($arr[$i]>$arr[$i+1]){ $kong=…
今天看了兄弟连php里面的冒泡排序与快速排序,想了下应该可以用python实现. 冒泡排序函数: def mysort(x): len1 = len(x) for i in range(len1-1,0,-1): for j in range(0,i): if x[j]>x[j+1]: x[j],x[j+1]=x[j+1],x[j] return x 第三行代码,是让i的值9到1,因为冒泡排序是大的数往后冒,当第二次循环时,最大的数已经在最后了,所以不需要在比较一次. 同理,第三次,只要让其比较…
改进的冒泡排序 一.算法描述 基于原冒泡排序 每次选取第一个元素作为主元往后进行比较,若遇到比它小的则放到它左边(即进行交换),若遇到比它大的则选取大的作为主元进行后续比较,每趟选取了无序列中最大元素放置无序列最后位,当一趟比较没有发生交换则为有序序列,即像吐泡泡一样第一次把最大的数吐到最末位,第二趟把倒数第二大的数吐到倒数第二位..... 到last,同样当某趟排序不发生交换时完成排序 二.算法分析 原每趟排序的范围固定为0到n,0到n-1,0到n-2......到last,且每次的last是…
冒泡排序 一.算法描述 假设序列中有N个元素: 第一趟选取第一个元素作为关键字,从左至右比较,若遇到比它小的则放到它左边(也即两数进行交换),若遇到比它大的,则改为选取该元素作为关键字完成后续的比较,第一趟则将最大的数调整至序列的最末位置 第二趟选取第一个元素作为关键字,从左至右比较,若遇到比它小的则放到它左边(也即两数进行交换),若遇到比它大的,则改为选取该元素作为关键字完成后续的比较,第二趟则将倒数第二大的数调整至序列的倒数第二位置 第三趟选取第一个元素作为关键字,从左至右比较,若遇到比它小…
冒泡排序是小元素向前或向后的大要素.两个相邻元件之间的比较结果更.交换也这两个元件之间发生.它是最慢的排序算法. 效率最低的算法. 时间复杂度: 它是最差时间复杂度为:O(n^2),冒泡排序最好的时间复杂度为:O(n^2).平均时间复杂度为:O(n^2) 算法原理:     1. 比較相邻的元素.假设第一个比第二个大.就交换他们两个.     2. 对每一对相邻元素作相同的工作,从開始第一对到结尾的最后一对. 在这一点,最后的元素应该会是最大的数.     3. 针对全部的元素反复以上的步骤,除…
reverse( )  数组逆序   // reverse() 数组逆序 var arr = ["边境牧羊犬", "德国牧羊犬", "金毛", "贵宾犬", "柯基犬"]; arr.reverse(); alert(arr); //柯基犬,贵宾犬,金毛,德国牧羊犬,边境牧羊犬   reverse 直接修改原数组.    …
零散知识点: 非格式化输入输出:getchar().putchar() 格式化输入输出   :scanf().printf() 字符串输入输出   :gets() 或 scanf().puts() 或 printf(). gets()函数以换行符或文件结束符EOF作为输入的结束标志,因此,在输入的字符串中允许包含空格或制表符. scanf()函数则以空格.制表符.换行符和文件结束符EOF作为输入的结束标志,因此,在输入的字符串中不允许包含这些字符. puts()函数在字符串显示完毕后换行. pr…
C语言折半查找法练习题 折半查找法: 折半查找法是效率较高的一种查找方法.假设有已经按照从小到大的顺序排列好的五个整数num[0]~num[4],要查找的数是key,其基本思想是: 设查找数据的范围下限为low=0,上限为high=5,求中点mid=(low+high)/2,用key与中点元素a[mid]比较,若key==a[mid],即找到,停止查找:否则,若key>a[mid],替换下限low=mid+1,到下半段继续查找:若key<a[mid],换上限high=mid-1,到上半段继续查…
6-4 冒泡排序 (10 分)   编程实现冒泡排序函数.void bubbleSort(int arr[], int n);.其中arr存放待排序的数据,n为数组长度(1≤n≤1000). 函数接口定义如下: /* 对长度为n的数组arr执行冒泡排序 */ void bubbleSort(int arr[], int n); 请实现bubbleSort函数,使排序后的数据从小到大排列. 裁判测试程序样例: #include <stdio.h> #define N 1000 int arr[N…