算法

有序数组查找速度比无序数组快 

在插入操作中由于所有的数据都需要移动以腾开空间,速度慢

有序数组和无序数组的删除操作都很慢,数据项必须向前移动来填补已删除数据项的洞

有序数组在查找频繁的情况下十分有用,但若是插入和删除较为频繁时,则无法高效工作

 

 1 冒泡排序
 2 public void bubbleSort()
 3 {
 4     int out , in; 
 5      for(out=nElems-1; out>1; out--)
 6         for(in=0;in<out;in++)
 7             if(a[in]>a{in+1])
 8                 swap(in,in+1);
 9 }
 1 选择排序
 2 public void selectionSort()
 3 {
 4     int out,in,min;
 5     for(out=0;out<nElems-1;out++)
 6     {
 7         min=out;
 8         for(in=out+1;in<nElems;in++)
 9             if(a[in]<a[min])
10                 min=in;
11                 swap(out,min);    
12     }
13 }
 1 插入排序
 2 public void insertionSort()
 3 {
 4     int in,out;
 5     for(out=1;out<nElems;out++)
 6     {
 7         long temp = a[out];
 8         in=out;
 9         while(in>0 && a[in-1] >= temp)
10 11            a[in]= a[in-1];
12             --in;
13          }
14         a[in]= temp;
15     }
16 }

 

posted @ 2017-06-13 14:10  大腮鱼  阅读(168)  评论(0编辑  收藏  举报