分享程式代碼相關筆記
目前文章總數:157 篇
最後更新:2024年 12月 07日
給定一組可比較陣列
1. 遍歷每個元素
2. 遍歷時將此元素以前(包含此元素)的所有元素做排序
3. 完成排序
※補充:多此一舉的作法,泡沫排序中用遍歷包裝
初始內有3個值
輸入一組數列 inputItem 求出 result
public void Execute()
{
List<int> inputItem = new() { 92, 17, 38, 59, 26, 39 };
var gnomeSort = new GnomeSort<int>();
var result = gnomeSort.GnomeAscendingSorting(inputItem);
}
主要三個流程
1. 輸入陣列
2. 遍歷每個元素,遍歷時將此元素以前(包含此元素)的所有元素做排序
3. 完成
public class GnomeSort<T> where T : IComparable
{
public List<T> GnomeAscendingSorting(List<T> items)
{
T temp;
for (int index = 0; index < items.Count(); index++)
{
for (int innerIndex = 0; innerIndex < index + 1; innerIndex++)
{
if (items[index].CompareTo(items[innerIndex]) < 0)
{
temp = items[index];
items[index] = items[innerIndex];
items[innerIndex] = temp;
}
}
}
return items;
}
}