|
test1的時間復(fù)雜度最高,test2的時間復(fù)雜度優(yōu)于test1,test3的時間復(fù)雜度最小,所用的時間最少 [cpp] /************************************test1**********************/ //程序功能:在順序存儲模式下將所有的負數(shù)放到整數(shù)前面 #include<iostream> using namespace std; /* *算法描述:找到負數(shù)并用臨時變量存上,先將負數(shù)之前的所有的數(shù)向后移一位,然后將負數(shù)放在最前面。 */ int main() { int Array = {2,-3,4,-5,6,-7,8,-9,10,-11}; for(int i =0;i < 10;i++) { int temp1;//temp1用于存放找到的負數(shù) if(Array[i]< 0) { temp1 = Array[i]; for(int j =i;j>0;j--) { Array[j] = Array[j-1]; } Array[0] = temp1; } } for(int k = 0;k < 10;k++) { cout《Array[k]《" "; } } /***********************************test2**********************************/ //程序功能:在順序存儲模式下將所有的負數(shù)放到整數(shù)前面 #include<iostream> using namespace std; /* *算法描述:用一個變量存儲數(shù)組前面負數(shù)的位置。 */ int main() { int Array = {2,-3,4,-5,6,-7,8,-9,10,-11},k =0; for(int i =0;i < 10;i++) { int temp1;//temp1用于交換數(shù)據(jù)的臨時變量 if(Array[i]< 0) { temp1 = Array[i]; Array[i] = Array[k]; Array[k] = temp1; k++; } } for(int k = 0;k < 10;k++) { cout《Array[k]《" "; } } |
|
|
來自: 小數(shù)點2013 > 《我的圖書館》