簡單的選擇排序實現
class ArraySel{
private long[] a;
private int nElems;
public ArraySel(int max)
{
a= new long[max];
nElems=0;
}
public void insert (long value)
{
a[nElems]=value;
nElems++;
}
public void display(){
for (int j=0;j<nElems;j++)
System.out.println(a[j]+"");
System.out.println("");
}
public void selectionSort()
{
int out,in,min;
for(out=0;out<nElems-1;out++)
{
min=out;
for(in=out+1;in<nElems;in++)
if(a[in]<a[min])
min=in;
swap(out,min);
}
}
private void swap(int one,int two){
long temp=a[one];
a[one]=a[two];
a[two]=temp;
}
}
相關推薦
簡單選擇排序 java實現
簡單選擇排序 基本思想:在要排序的一組數中,選出最小的一個數與第一個位置的數交換;然後在剩下的數當中再找最小的與第二個位置的數交換,如此迴圈到倒數第二個數和最後一個數比較為止。 程式碼實現如下 public class SimpleSelectSort { publi
簡單選擇排序演算法原理及java實現(超詳細)
選擇排序是一種非常簡單的排序演算法,就是在序列中依次選擇最大(或者最小)的數,並將其放到待排序的數列的起始位置。 簡單選擇排序的原理 簡單選擇排序的原理非常簡單,即在待排序的數列中尋找最大(或者最小)的一個數,與第 1 個元素進行交換,接著在剩餘的待排序的數列中繼續找最大(最小)的一個數,與第 2 個元素交
排序演算法2——圖解簡單選擇排序及其實現
排序演算法1——圖解氣泡排序及其實現(三種方法,基於模板及函式指標) 排序演算法2——圖解簡單選擇排序及其實現 排序演算法3——圖解直接插入排序以及折半(二分)插入排序及其實現 排序演算法4——圖解希爾排序及其實現 排序演算法5——圖解堆排序及其實現 排序演算法6——圖解歸併排序及其遞迴與非
資料結構和演算法 | 簡單選擇排序演算法原理及實現
選擇排序是一種非常簡單的排序演算法,就是在序列中依次選擇最大(或者最小)的數,並將其放到待排序的數列的起始位置。 簡單選擇排序的原理 簡單選擇排序的原理非常簡單,即在待排序的數列中尋找最大(或者最小)的一個數,與第 1 個元素進行交換,接著在剩餘的待排序的數列
簡單選擇排序演算法JAVA實現
簡單選擇排序的過程為:第1次,從n個記錄中找出關鍵碼最小的記錄與第1個記錄交換,第2次,,從第2個記錄開始的n-1個記錄中再選出關鍵碼最小的記錄與第2個記錄交換;如此,第i次,則從第i個記錄開始的n-i+1個記錄中選出關鍵碼最小的記錄與第i個記錄交換,直到整個序列按關鍵碼有序。 例:3,1,4,
簡單選擇排序_java實現
思路分析 每一次選出最小的一個數 //簡單選擇排序 public void simpleSelectionSort(int[] a) { int i, j, len; int p=1;//記錄第n次的排序
c++實現簡單選擇排序和堆排序
接下來我們對簡單選擇排序和堆排序做詳細額介紹,排序過程中使用的資料仍和前兩節排序過程中使用的資料相同:int a[10] = {45,12,36,76,45,9,33,19,87,23}; 1、簡單選
簡單選擇排序,C語言實現
簡單選擇排序和堆排序 都是內部排序中的選擇排序。首先我們先介紹選擇排序法的基本思想:我們想象一個炒股票的人,他只會在時機非常明確到來的時候才出手,也就是當排序的時候,找到合適的關鍵字再交換,並且只移動一次。簡單選擇排序的基本思想:每一趟都是在(n-i+1),(i=1,2,
C語言實現氣泡排序和簡單選擇排序
氣泡排序(Bubble Sort)的基本思想為兩兩比較相鄰記錄的關鍵字,如果反序則交換,直到沒有反序記錄為止。 其時間複雜度為O(n^2)。 簡單選擇排序(Simple Selection Sort)
C語言簡單選擇排序演算法的實現
簡單選擇排序從元素中跳出最小關鍵字,將其放在已排序列的最後,未排序的序列最前,直到全部排序完成為止,其空間複雜度為O(1),時間複雜度為O(n2)。下面是實現程式碼: 首先仍然是預定義和型別定義: #define OK 1 #define ERROR 0 typedef
用Java實現簡單選擇排序
package ch10; /** * 簡單選擇排序 * @author songjie * */ public class SelectSort { public static <T extends Comparable> boolean sele
簡單的選擇排序實現
package com.qst.selectSort; class ArraySel{private long[] a;private int nElems; public ArraySel(int max) {a= new long[max];nElems=0; } public void insert (
簡單選擇排序(Java實現)
基本概念:在要排序的一組數中,選出最小的一個數與第1個位置的數交換;然後在剩下的數當中再找最小的與第2個位置的數交換,依次類推,直到第n-1個元素(倒數第二個數)和第n個元素(最後一個數)比較為止。簡單
資料結構 簡單選擇排序(C語言實現)
選擇排序的基本思想:每一趟在n-i+1(i=1,2,3,…,n-1)個記錄中選取關鍵字最小的記錄作為有序序列中第i個記錄。 演算法思想 第一趟簡單選擇排序時,從第一個記錄開始,通過n-1 次關鍵字比較,從n 個記錄中選出關鍵字最小的記錄,並和第
資料結構 排序(氣泡排序改進,簡單選擇排序連結串列實現)
實驗題目: 排序演算法實現與比較 實驗環境: Visual C++ 6.0 實驗八: 實驗目的和要求:熟悉多種排序演算法,理解每種排序演算法思想,掌握排序演算法的基本設計方法,掌握排序演算法
簡單選擇排序 Python實現
def SimpleSelectSort(arr): for i in range(len(arr)-1): min=i for j in range(i
經典排序算法--簡單選擇排序
減少 pac 高效 str creat election pub 臨時 ack 算法簡介 簡單選擇排序是一種選擇排序。 選擇排序:每趟從待排序的記錄中選出關鍵字最小的記錄,順序放在已排序的記錄序列末尾,直到全部排序結束為止。 白話理解 依然已排隊為例,在排隊時,有的老師
排序——直接選擇排序(簡單選擇排序)
無序 代碼 .... 插入排序 相對 方法 import 排序 color 直接選擇排序也稱簡單選擇排序,是一種相對簡單的排序算法,它的基本思想是:從一列數中找出最小的,和第一個交換;剩下的重新找出最小的,和這列數的第二個交換,......一直進行n-1次比較之後,該數列已
算法一之簡單選擇排序
!= 復雜度 cnblogs 數據 lec 空間 class 相同 i++ 一、 選擇排序的思想 選擇排序的基本思想是:每一趟在n-i+1(i=1,2,…n-1)個記錄中選取關鍵字最小的記錄作為有序序列中第i個記錄。基於此思想的算法主要有簡單選擇排序、樹型選擇
排序算法之簡單選擇排序
clip order ng- left 運行 [] cal var ret 基本思想 在一組元素中選擇具有最小排序碼的元素,若它不是這組元素中的第一個元素,則將它與這組元素中的第一個元素對調;在未排序的剩下的元素中反復運行以上步驟,直到剩余元素僅僅有一