zoukankan      html  css  js  c++  java
  • 冒泡 选择 插入排序

    冒泡 选择 插入排序

    一时兴起,写一下这三种排序的代码

    冒泡排序

    //一直找最大的放到最后面
    #include<iostream>
    #include<algorithm>
    using namespace std;
    int a[10];
    int main()
    {
    	//先输入这个数组 
    	for(int i=0;i<10;i++)
    	{
    		cin>>a[i];
    	}
    	int n=sizeof(a)/sizeof(a[0]);
    	if(n<2)  return 0;
    	
    	for(int end=n-1;end>0;end--)
    	{
    		for(int i=0;i<end;i++)
    		{
    			if(a[i]>a[i+1])
    			swap(a[i],a[i+1]);
    		}
    	}
    	
    	for(int i=0;i<10;i++)
    	cout<<a[i]<<endl;
    	return 0;
    }
    

    选择排序

    #include<iostream>
    #include<algorithm>
    using namespace std;
    int a[10];
    int main()
    {
    	//先输入这个数组 
    	for(int i=0;i<10;i++)
    	{
    		cin>>a[i];
    	}
    	int n=sizeof(a)/sizeof(a[0]);
    	if(n<2)  return 0;
    	
    	//找最小的 放最前面
    	for(int i=0;i<n-1;i++)
    	{
    		int minindex=i;
    		for(int j=i+1;j<n;j++)
    		{
    			minindex=a[j]<a[minindex]?j:minindex;
    		}
    		swap(a[minindex],a[i]);
    	} 
    	
    	for(int i=0;i<10;i++)
    	cout<<a[i]<<endl;
    	return 0;
    }
    

    插入排序

    #include<iostream>
    #include<algorithm>
    using namespace std;
    int a[10];
    int main()
    {
    	//先输入这个数组 
    	for(int i=0;i<10;i++)
    	{
    		cin>>a[i];
    	}
    	int n=sizeof(a)/sizeof(a[0]);
    	if(n<2)  return 0;
    	
    //从第二个数开始,依次与前面的比较
    	for(int i=1;i<n;i++)
    	{
    		for(int j=i-1;j>=0 && a[j]>a[j+1];j--)
    		{
    			swap(a[j],a[j+1]);
    		}
    	}
    	
    	for(int i=0;i<10;i++)
    	cout<<a[i]<<endl;
    	return 0;
    }
    
    
  • 相关阅读:
    链表栈
    双链表
    Linux sar命令查看系统资源使用情况
    Linux 命令(w/who/whoami/who am i)
    shell脚本引用expect
    expect 免交互配置互信
    expect 远程传输文件
    expect 远程执行命令-02
    expect 远程执行命令-01
    expect 脚本自定义变量和位置变量
  • 原文地址:https://www.cnblogs.com/serendipity-my/p/12667385.html
Copyright © 2011-2022 走看看