本篇内容主要讲解“JavaScript、Python、Java实现选择排序的代码怎么写”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JavaScript、Python、Java实现选择排序的代码怎么写”吧!
选择排序(Selection sort)是一种简单直观的排序算法。其基本思想是:首先在未排序的数列中找到最小(or最大)元素,然后将其存放到数列的起始位置;接着,再从剩余未排序的元素中继续寻找最小(or最大)元素,然后放到已排序序列的末尾。
算法步骤
首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。
再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。
重复第二步,直到所有元素均排序完毕。
动图演示
代码实现
JavaScript 代码实现
实例
function selectionSort(arr) { var len = arr.length; var minIndex, temp; for (var i = 0; i for (var j = i + 1; j if (arr[j] return arr;}
Python 代码实现
实例
def selectionSort(arr): for i in range(len(arr) - 1): # 记录最小数的索引 minIndex = i for j in range(i + 1, len(arr)): if arr[j] # i 不是最小数时,将 i 和最小数进行交换 if i != minIndex: arr[i], arr[minIndex] = arr[minIndex], arr[i] return arr
Go 代码实现
实例
func selectionSort(arr []int) []int { length := len(arr) for i := 0; i for j := i + 1; j if arr[min] > arr[j] { min = j } } arr[i], arr[min] = arr[min], arr[i] } return arr}
Java 代码实现
实例
public class SelectionSort implements IArraySort { @Override public int[] sort(int[] sourceArray) throws Exception { int[] arr = Arrays.copyOf(sourceArray, sourceArray.length); // 总共要经过 N-1 轮比较 for (int i = 0; i for (int j = i + 1; j if (arr[j] if (i != min) { int tmp = arr[i]; arr[i] = arr[min]; arr[min] = tmp; } } return arr; }}
PHP 代码实现
实例
function selectionSort($arr){ $len = count($arr); for ($i = 0; $i $len - 1; $i++) { $minIndex = $i; for ($j = $i + 1; $j $len; $j++) { if ($arr[$j] $arr[$minIndex]) { $minIndex = $j; } } $temp = $arr[$i]; $arr[$i] = $arr[$minIndex]; $arr[$minIndex] = $temp; } return $arr;}
C 语言
实例
void swap(int *a,int *b) //交換兩個變數{ int temp = *a; *a = *b; *b = temp;}void selection_sort(int arr[], int len){ int i,j; for (i = 0 ; i for (j = i + 1; j if (arr[j]
C++
实例
template //整數或浮點數皆可使用,若要使用物件(class)時必須設定大於(>)的運算子功能void selection_sort(std::vector& arr) { for (int i = 0; i for (int j = i + 1; j if (arr[j]
C#
实例
static void selection_sort(T[] arr) where T : System.IComparable{//整數或浮點數皆可使用 int i, j, min, len = arr.Length; T temp; for (i = 0; i for (j = i + 1; j if (arr[min].CompareTo(arr[j]) > 0) min = j; temp = arr[min]; arr[min] = arr[i]; arr[i] = temp; }}
Swift
实例
import Foundation/// 选择排序////// - Parameter list: 需要排序的数组func selectionSort(_ list: inout [Int]) -> Void { for j in 0..for i in j..if list[minIndex] > list[i] { minIndex = i } } list.swapAt(j, minIndex) }}
到此,相信大家对“JavaScript、Python、Java实现选择排序的代码怎么写”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!