zoukankan      html  css  js  c++  java
  • 冒泡排序优化以及插入排序(本文凝视较少适合有一定基础的观看)

    #include<stdio.h>
    #define cnt 6  //定义排序个数
    //冒泡排序优化
    void Bubble_Sort(int A[],int N)
    {
    	for(int P = N - 1; P >= 0;P--)
    	{
    
    		int flag = 0;                  //定义一个flag推断之后的序列是否有序
    		for(int i = 0;i < P;i++)       //一趟冒泡
    		{
    			if(A[i] > A[i+1])          //一次一次的冒泡
    			{
    				int temp = A[i+1];
    				A[i+1] = A[i];
    				A[i] = temp;
    			}
    			flag = 1;
    		}
    		if(flag == 1)                  //说明之后的序列以及有序不用在排
    			break;
    	}
    }
    
    //插入排序
    void Insertion_Sort(int A[],int N)
    {
    	for(int P = 1;P < N;P++) //初始数字 把P【0】当成基本数字 然后进行插入N张牌  for循环运行顺序先运行1 然后推断是否满足条件
    	{
    		int Tmp = A[P];      //存放须要插入的数字
    		int i;               //记录移动位置
    		for(i = P;i>0&&A[i-1]>Tmp;i--)     //对须要插入的数进行移动
    		{
    			A[i] = A[i-1];
    		}
    		A[i] = Tmp;
    	}
    }
    int main()
    {
    	int a[cnt] = {5,7,4,1,9,6};
    	Insertion_Sort(a,cnt);
    	for(int i=0;i< cnt;i++)
    	{
    		printf("%d ",a[i]);
    	}
    	getchar();
    }
    
    

  • 相关阅读:
    pyinstaller相关用法
    yield 与 yield from
    async /await相关知识理解
    调试程序方法pdb
    任务22-4
    任务22-2
    跳台阶
    计算三维空间某点距离原点的欧式距离
    质数判断
    罗马数字转换
  • 原文地址:https://www.cnblogs.com/lxjshuju/p/7091518.html
Copyright © 2011-2022 走看看