資料結構與演算法 物件排序

2021-08-21 20:02:25 字數 1325 閱讀 8080

前面都是對基本資料型別的資料進行排序,如:氣泡排序,選擇排序,插入排序。如何對引用類似的物件進行排序?

先封裝乙個student類:

public class student 

public int getstuno()

public void setstuno(int stuno)

public string getname()

public void setname(string name)

public string getgender()

public void setgender(string gender)

public int getage()

public void setage(int age)

}

再寫乙個物件排序的封裝類:

public class objectsort 

public objectsort(int cloum)

//插入物件

public void insert(student stu)

//顯示物件

public void display()

}

結果顯示如下:

通過學號進行物件排序前:--------------

學號:101,姓名:f張三,性別:男,年齡:23

學號:211,姓名:c李四,性別:女,年齡:22

學號:402,姓名:b王五,性別:男,年齡:24

學號:123,姓名:d趙六,性別:女,年齡:26

學號:108,姓名:a錢八,性別:男,年齡:24

學號:306,姓名:e孫九,性別:男,年齡:29

通過學號進行物件排序後:--------------

學號:101,姓名:f張三,性別:男,年齡:23

學號:108,姓名:a錢八,性別:男,年齡:24

學號:123,姓名:d趙六,性別:女,年齡:26

學號:211,姓名:c李四,性別:女,年齡:22

學號:306,姓名:e孫九,性別:男,年齡:29

學號:402,姓名:b王五,性別:男,年齡:24

通過姓名比較進行物件排序後:------------

學號:108,姓名:a錢八,性別:男,年齡:24

學號:402,姓名:b王五,性別:男,年齡:24

學號:211,姓名:c李四,性別:女,年齡:22

學號:123,姓名:d趙六,性別:女,年齡:26

學號:306,姓名:e孫九,性別:男,年齡:29

學號:101,姓名:f張三,性別:男,年齡:23

資料結構與演算法 排序

排序原理 1.比較相鄰的元素。如果前乙個元素比後乙個元素大,就交換這兩個元素的位置。2.對每一對相鄰元素做同樣的工作,從開始第一對元素到結尾的最後一對元素。最終最後位置的元素就是最大 值。氣泡排序的 實現 public static void sortpop int arr 測試 public st...

《資料結構與演算法 排序》

1 快速排序 1.記錄 排序中的結點 2.檔案 一系列結點構成的線性表 3.排序又稱分類 4.排序碼 結點中乙個或者多個字段,其值作為排序運算中的根據。基本思想 每次選擇待排序的記錄序列的第1個記錄,按照排序碼的大小將其插入到已排序的記錄序列的適當位置,直到所有記錄全部排序完畢。最簡單的排序方法。整...

演算法與資料結構 排序

void x sort elementtype a,int n 預設討論從小到大的整數排序void bubble sort elementtype a,int n if flag 0 break 無交換則退出 void insert sort elementtype a,int n a i tmp ...