冒泡法與選擇法對10個數進行從小到大的排序
//對10個數字按照從小到大的排序
氣泡排序:
#include <stdio.h>
int main()
{
int i;
int j;
int temp;
int a[10]={61,4,7,45,13,6,25,11,9,23};
for(i=0;i<9;i++) //n個數最多做n-1趟排序
{
for(j=0;j<9-i;j++)
{
if(a[j]>a[j+1])
{
temp=a[j+1 ];
a[j+1]=a[j];
a[j]=temp;
}
}
} //氣泡排序演算法
for(i=0;i<10;i++)
{
printf("%4d",a[i]);
}
printf("\n");
return 0;
}
選擇排序:從第0位開始,與後面的所有數進行比較,選出最小的互換位置,保證第0位值最小;
從第1位開始,與後面得剩餘數進行比較,選出除第0位外最小的數互換位置,保證為次最小值;
依次類推到第9位,與第10位交換;退出迴圈。
#include <stdio.h>
int main()
{
int a[10]={1,43,5,2,54,93,14,83,35,20};
int i;
int j;
int min;
for(i=0;i<9;i++)
{
for(j=i+1;j<10;j++)
{
if(a[i]>a[j])
{
min=a[j];
a[j]=a[i];
a[i]=min;
}
}
} //選擇排序演算法
for(i=0;i<=9;i++)
{
printf("%4d",a[i]);
}
printf("\n");
return 0;
}
相關推薦
冒泡法與選擇法對10個數進行從小到大的排序
//對10個數字按照從小到大的排序 氣泡排序: #include <stdio.h> int main() { int i; int j; int temp
陣列排序(交換法與選擇法)
交換法與選擇法降序排序 交換法 交換法對陣列陣列進行排序的基本思路 就是先讓陣列(n個數)中的最左邊的一個數(用i=0代表)與其右邊的每一個數(從j=i+1開始)依次(j++)進行比較,若遇到比其大的數(score[j]>score[i]),則將較
C程式設計實現:對10個數進行排序
下面來介紹一下在Microsoft Visual C++中使用C來程式設計實現對鍵盤輸入的10個數進行排序。具體步驟如下: 1、首先開啟Microsoft Visual C++軟體,選擇新建C++原始檔,如圖所示: 2、接下來先儲存好原始檔,如圖所示: 3、現在就可以開始在原
用冒泡法對10個數排序
inpu sort cout log pac ted 個數 names std #include<iostream> #include<stdlib.h> using namespace std; int main() { int a[1
用選擇法對陣列中的10個數進行從小到大排序.Cpp
#include<iostream> using namespace std; int main() { void select_sort(int array[],int n); int a[10],i; cout<<"enter t
C語言中冒泡法、選擇法、插入法三種常見排序演算法分析
一、冒泡法(起泡法) 演算法要求:用起泡法對10個整數按升序排序。 演算法分析:如果有n個數,則要進行n-1趟比較。在第1趟比較中要進行n-1次相鄰元素的兩兩比較,在第j趟比較中要進行n-j次兩兩比較。比較的順序從前往後,經過一趟比較後,將最值沉底(換到最後一個元
攤還分析,核算法與勢能法
為什麼我們需要攤還分析 上篇文章我們提到了演算法的時間複雜度分析,給定輸入規模,我們分析出演算法的耗時,但是這樣夠了嗎? 有時輸入規模不是一個靜態的值,可能輸入是一系列操作,比如在這棵樹裡先插入結點,再做一個查詢,再刪除最小值,再與另一棵樹合併。(插入,查詢,刪除最小值,合併)就是一
牛頓法與二分法的比較—matlab實現
剛學完牛頓迭代法,為了驗證收斂的速率,用Matlab做了比較 首先是牛頓迭代法 %比較牛頓迭代法、 function [x,i]=newtonmethod(x0,f,ep,Nmax)%x0—初值,f—
第一次發博,《染色法與構造法在棋盤上的應用》的理解
看了太多大神的文章,被嚇的半句話也不敢亂說,然後看了很多很多人教育我說要學會寫部落格,而我一直都覺得自己弱成渣,分分鐘被秒成狗,然而我還是來了,因為儘管我弱,而你,卻無可奈何。 廢話不多說,第一次就不發別人發過的題解了,別人沒發過的不用說,我肯定不會做。。。  
c語言 對10個數組元素依次賦值為0 1 2 3 4 5 6 7 8 9,要求按逆序輸出
對10個數組元素依次賦值為0,1,2,3,4,5,6,7,8,9,要求按逆序輸出。 解:程式:
雨流計數法的matlab實現,採用三點法與四點法
介紹雨流計數法是20世紀50年代由英國的兩位工程師M.Matsuishi和T.Endo提出來的。該計數法的主要功能是把實測載荷歷程簡化為若干個載荷迴圈,供疲勞壽命估算和編制疲勞試驗載荷譜使用。它以雙引數法為基礎,考慮了動強度(幅值)和靜強度(均值)兩個變數,符合疲勞載荷本身固
分支限界法與回溯法的區別
分支限界法類似於回溯法,也是一種在問題的解空間樹T上搜索問題解的演算法。但在一般情況下,分支限界法與回溯法的求解目標不同。回溯法的求解目標是找出T中滿足約束條件的所有解,而分支限界法的求解目標則是找
二維陣列求10個數的最大值
#include<stdio.h> int main() { int a[3][4]={{11,12,13,15},{9,7,8},{22,33,44}};//定義陣列及初始化 int i,j; int row=0,colum=0,max=
C#--輸入10個數存入陣列中,求這10個數的最大值、最小值和平均值。
輸入10個數存入陣列中,求這10個數的最大值、最小值和平均值。 using System; using System.Collections.Generic; using System.Linq; u
for編寫10個數找最大值
import java.util.Scanner; public class Test02{ public static void main(String[] args){ Scanner in
數據結構對單鏈表進行數據排序
tar ocs tmc www fan div wke userinfo exc 匭z16ka藕2時mc脊允http://t.docin.com/gpkdx21266 絞0沿6qgwm譾薔jzhttp://docstore.docin.com/sina_637079836
大資料之使用hadoop對海量資料進行統計並排序
不得不說,Hadoop確實是處理海量離線資料的利器,當然,凡是一個東西有優點必定也有缺點,hadoop的缺點也很多,比如對流式計 算,實時計算,DAG具有依賴關係的計算,支援都不友好,所以,由此誕生了很多新的分散式計算框 架,Storm,Spark,Tez,impala,
如何使用hadoop對海量資料進行統計並排序
下面進入正題,先來分析下散仙這個例子的需求,總共需要二步來完成,第一步就是對短語的統計,第二步就是對結果集的排序。所以如果使用MapReduce來完成的話,就得需要2個作業來完成這件事情,第一個作業來統計詞頻,第二個來負責進行排序,當然這兩者之間是有依賴關係的,第二個作業的執行,需要依賴第一個作業的結果,這就
Java對英文句子進行倒序排序
轉自:http://www.sharejs.com/codes/java/6831 /** * 工具類 * @author Administrator * */ public class Util { /** * 判斷一個字元是否是字母
經典排序算法-冒泡與選擇
main class sta 冒泡 oos 冒泡排序 選擇 運行 結果 1 冒泡排序的思想類似氣泡上升,數組前後元素兩兩比較,如果前面的元素比後面的大就交換位置,每趟排序都可以確定最大值的位置 2 選擇排序思想類似打擂臺,每趟比較都把最小的值排在數組最前面,每趟比較都可以確