问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

数据结构中,请分别写出直接插入排序、冒泡排序、简单选择排序的各趟结果

发布网友 发布时间:2022-05-06 04:02

我来回答

1个回答

热心网友 时间:2023-10-03 08:01

#include<iostream>
using namespace std;
int a[8] ={56,34,78,26,9,67,12,36};
int b[8] ={56,34,78,26,9,67,12,36};
int c[8] ={56,34,78,26,9,67,12,36};
int insert_sort(int n)
{
  int j,temp;
 for(int i = 1;i < n; i++)
 {
  if(a[i] < a[i-1])
  {
   temp = a[i];j = i-1;
   do{
    a[j+1] = a[j];
    j--;
   }while(temp <= a[j]);
   a[j+1] = temp;
  }
  for(int i = 0; i< n; i++)
      cout<<a[i]<<ends;
    cout<<endl;
 }
 return 0;
}

int bubbleSort(int n)
{
    int i,j,t;
    bool exchange;
    for(j = 0; j<n-1; j++)
    {
          exchange = 0;
          for(i = 0;i< n-j-1; i++)
             if(b[i]>b[i+1])
             {
                 t = b[i];
                 b[i] = b[i+1];
                 b[i+1] = t;
                 exchange = 1;
             }
          for(int i = 0; i< n; i++)
             cout<<b[i]<<ends;
          cout<<endl; 
          if(!exchange)
          return 1;
    }
    return 0;
}

int selectSort(int n)
{
    int i,j,k,temp;
    for(i = 0; i< n-1; i++)
    {
          k = i;
          for(j = i+1; j< n; j++)
          {
                if(c[k]>c[j])
                   k = j;
          }
          if(k!= i)
          {
                 temp = c[i];
                 c[i] = c[k];
                 c[k] = temp;
          }
          for(int i = 0; i< n; i++)
               cout<<c[i]<<ends;
          cout<<endl;
    }
    return 0;
}
int main()
{
 int n= 8;
  cout<<"插入排序,每次(第一行是原来的序列):"<<endl;
  for(int i = 0; i< n; i++)
      cout<<a[i]<<ends;
  cout<<endl;
 insert_sort(n);
 cout<<"最终结果:"<<endl;
 for(int i = 0; i< n; i++)
  cout<<a[i]<<ends;
 cout<<endl<<endl;
 
 cout<<"冒泡法,每次(第一行是原来的序列):"<<endl;
 for(int i = 0; i< n; i++)
      cout<<b[i]<<ends;
  cout<<endl;
  bubbleSort(8);
  cout<<"最终结果:"<<endl;
 for(int i = 0; i< n; i++)
  cout<<b[i]<<ends;
 cout<<endl<<endl;
 
  cout<<"选择排序,每次(第一行是原来的序列):"<<endl;
  for(int i = 0; i< n; i++)
      cout<<c[i]<<ends;
  cout<<endl;
  selectSort(8);
  cout<<"最终结果:"<<endl;
 for(int i = 0; i< n; i++)
  cout<<c[i]<<ends;
 cout<<endl;
  
 system("pause");
}

追问我是Java的....

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
LG棒棒糖GD580这么看书 lg gd580怎么用moto看小说 各种海鲜馅饺子大全 海鲜水饺都有什么馅儿的 用网上交易系统进行股票操作资金安全吗,我是在中信建投开的户 北京瀚正化妆学校包就业吗 通江车检在哪里,可以摩托车年审不? 摩托车年审在通江县哪里啊 我是四川省通江县人、我是摩托车驾驶证,以快到期,请问我在江苏无锡... 通江县哪里可以托运摩托车 数据结构排序问题,来思路即可 装修后,办理智能家居怎么办理方便? 三国演义第八十七回故事简介 三国演义第三十三回的主要内容 三国演义中曹丕的故事是什么 三国演义关于刘禅、曹丕的故事情节 三国演义曹丕篡汉概括 我在网上买了几十米带胶的墙纸,想自己贴上去,请问这种墙纸是不是很容易脱落,用两三年没事吧? 三国演义中曹丕夺帝位主要讲什么? 光用胶浆能贴墙纸吗? 曹丕五路兴兵故事简介? 彼岸花 真的花开一千年花落一千年花叶永不相见吗?有什么传说大神们帮帮忙 为什么说彼岸花开一千年落一千年 我喜欢彼岸花 ,不知道是不是因为它的花语呢? 彼岸花开一千年,落一千年,花叶永不 相见的 情 macbook怎么调大写 卸载oracle 11g,下了aix.ppc32_11gR2_deinstall.zip,请问该怎么 恒生电子业绩快报?恒生电子股价格表?恒生电子股还会跌吗? 三花智控现在股票为什么这么低呢?三花智控2021年业绩快报?三花智控股票k线图解析? 双汇信披门的事件始末 二手苹果手机其他版本是美版吗 智能家居系统怎么安装 在数据结构中,对一组数据写出其直接插入、冒泡、直接选择的每趟排序结果? 数据结构中有几种排序 数据结构判断题:直接选择排序的比较次数与关键码的初始状态有关_百度... 想要搭建一个完善的智能家居系统,你觉得应该怎么做? 数据结构 选择排序找最大值和最小值 智能家居系统怎么操作? 哪个星球的面积最大? 最大的星球是什么星球 自学资料员 什么星球最大? 建筑工程资料员可以自学吗? 什么星球最大 ? 怎样自学施工员,资料员,需要什么软件,什么书 急!请问:&quot;陕西省华阴县&quot;华的读音 在宇宙中,最大的星球是什么? 华字读第四声怎样组词 资料员可以自学考通过吗? &quot;华州司功参军&quot;怎么断句?请详细解释。&quot;华&quot;怎么发音? 两寸的照片多大咬牙?