xuanze5.txt

来自「一本数据结构的经典书籍-数据结构算法程序集里」· 文本 代码 · 共 40 行

TXT
40
字号
//选择排序法xuanze5.cpp
//排序后不改变原数组各元素的值
#include<iostream.h>
#include<iomanip.h>
#define M 10
void sortp(int d[],int *pd[],int b[],int size)
{int i,j,k;
 for(i=0;i<size-1;i++)
 {k=i;
  for(j=i+1;j<size;j++)
   if(d[b[k]]>d[b[j]]) k=j;
  if(i!=k)
  {int g=b[i];b[i]=b[k];b[k]=g;}}
 for(i=0;i<size;i++) pd[i]=&d[b[i]];
}
void main()
{cout<<"xuanze5.cpp运行结果:\n";
 int q[M],a[M],*p[M],n=M,i;
 for(i=0;i<n;i++) q[i]=random(101+i)%100;
 for(i=0;i<n;i++) {a[i]=i;p[i]=&q[i];}
 cout<<"排序前数组:\n";
 for(i=0;i<n;i++)
  cout<<setw(4)<<q[i];
 cout<<endl<<"排序后原数组:\n";
 sortp(q,p,a,n);
 for(i=0;i<n;i++)
  cout<<setw(4)<<q[i];
 cout<<endl<<"排序后数组:\n";
 for(i=0;i<n;i++)
  cout<<setw(4)<<*p[i];
 cout<<endl;cin.get();}
xuanze5.cpp运行结果:
排序前数组:
  26  72   2  88  87  11  15  90  59  61
排序后原数组:
  26  72   2  88  87  11  15  90  59  61
排序后数组:
   2  11  15  26  59  61  72  87  88  90

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?