Inhaltsverzeichnis
Selection Sort,selectionsort
C语言 选择排序 输入k个数字,递减输出的selection_sort(array, k)程序
Heim php教程 php手册 Selection Sort,selectionsort

Selection Sort,selectionsort

Jun 13, 2016 am 09:21 AM
sort

Selection Sort,selectionsort

Red is current min. Yellow is sorted list. Blue is current item. (picture from wikipedia, a little too fast)

 

10 numbers. Sort as ascend.

 

1. Find the min of the 10 and switch it with a[0], requires 9 times of compare

2. Find the min of the rest 9 and switch it with a[1], requires 8 times of compare

. . .

 

1, 10, 9

2, 9, 8

3, 8, 7

4, 7, 6

5, 6, 5

6, 5, 4

7, 4, 3

8, 3, 2

9, 2, 1

 

In conclusion: For 10 numbers, we need 9 times of finding the min, each has one-short amount of numbers to compare.

 

Implementation in PHP:

<span> 1</span> <?<span>php
</span><span> 2</span> <span>/*</span><span> selection sort: 
</span><span> 3</span> <span>    1. operate directly on the input array (&), not on a copy
</span><span> 4</span> <span>    2. sort as ascend
</span><span> 5</span> 
<span> 6</span> <span>    a is array
</span><span> 7</span> <span>    m is length of a
</span><span> 8</span> <span>    n is times of outer loop, which is finding min of the rest
</span><span> 9</span> <span>    i/j is for-loop counter
</span><span>10</span> <span>    w is for value swap
</span><span>11</span> <span>    min is min
</span><span>12</span> <span>    sub is index of array
</span><span>13</span> <span>*/</span>
<span>14</span> <span>function</span> sortSelection(&<span>$a</span><span>){
</span><span>15</span>     <span>$m</span> = <span>count</span>(<span>$a</span>);
<span>16</span>     <span>$n</span> = <span>$m</span> - 1;
<span>17</span>     <span>$min</span><span>;
</span><span>18</span>     <span>$sub</span>;
<span>19</span>     <span>for</span>(<span>$i</span>=0; <span>$i</span><<span>$n</span>; <span>$i</span>++<span>){
</span><span>20</span>         <span>$min</span> = <span>$a</span>[<span>$i</span>];
<span>21</span>         <span>for</span>(<span>$j</span>=<span>$i</span>; <span>$j</span><<span>$m</span>; <span>$j</span>++){
<span>22</span>             <span>if</span>(<span>$a</span>[<span>$j</span>] < <span>$min</span><span>){
</span><span>23</span>                 <span>$min</span> = <span>$a</span>[<span>$j</span><span>];
</span><span>24</span>                 <span>$sub</span> = <span>$j</span><span>;
</span><span>25</span> <span>            }
</span><span>26</span>             <span>else</span><span>{
</span><span>27</span>                 <span>$sub</span> = <span>$i</span><span>;
</span><span>28</span> <span>            }
</span><span>29</span> <span>        }
</span><span>30</span>         <span>$a</span>[<span>$sub</span>] = <span>$a</span>[<span>$i</span><span>];
</span><span>31</span>         <span>$a</span>[<span>$i</span>] = <span>$min</span><span>;
</span><span>32</span>         <span>//</span><span> echo implode(', ', $a).'<br />';</span>
<span>33</span> <span>    }
</span><span>34</span> <span>}
</span><span>35</span> 
<span>36</span> <span>$arr</span> = <span>array</span>(9, 5, 2, 7, 3<span>);
</span><span>37</span> sortSelection(<span>$arr</span><span>);
</span><span>38</span> <span>echo</span> <span>implode</span>(', ', <span>$arr</span><span>);
</span><span>39</span> 
<span>40</span> <span>//</span><span> 2, 3, 5, 7, 9</span>
<span>41</span> ?>
Nach dem Login kopieren

 

C语言 选择排序 输入k个数字,递减输出的selection_sort(array, k)程序

void selection_sort(int array[],int k)
{
int i,j,m,t;
for(i=0;im=i;
for(j=i+1;jif(array[j]m=j; //k记下目前找到的最小值所在的位置
if(m!=i){
t=array[i];
array[i]=array[m];
array[m]=t;
}
}
}
void main(){
int a[10];
for (int i=0;iscanf("%d",&a[i]);
selection_sort(a,10);
printf("排序结果为:");
for (i=0;iprintf("%d\n",a[i]);
}
 

C语言 选择排序 输入k个数字,递减输出的selection_sort(array, k)程序

void selection_sort(int array[],int k)
{
int i,j,m,t;
for(i=0;im=i;
for(j=i+1;jif(array[j]m=j; //k记下目前找到的最小值所在的位置
if(m!=i){
t=array[i];
array[i]=array[m];
array[m]=t;
}
}
}
void main(){
int a[10];
for (int i=0;iscanf("%d",&a[i]);
selection_sort(a,10);
printf("排序结果为:");
for (i=0;iprintf("%d\n",a[i]);
}
 

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So implementieren Sie Drag-and-Drop-Sortierung und Drag-and-Drop-Vorgänge in Uniapp So implementieren Sie Drag-and-Drop-Sortierung und Drag-and-Drop-Vorgänge in Uniapp Oct 19, 2023 am 09:39 AM

Uniapp ist ein plattformübergreifendes Entwicklungsframework, mit dem Entwickler schnell und einfach verschiedene Anwendungen entwickeln können. Es ist auch sehr einfach, Drag-and-Drop-Sortierung und Drag-and-Drop-Vorgänge in Uniapp zu implementieren, und es kann Drag-and-Drop-Vorgänge für eine Vielzahl von Komponenten und Elementen unterstützen. In diesem Artikel wird erläutert, wie Sie mit Uniapp Drag-and-Drop-Sortierung und Drag-and-Drop-Vorgänge implementieren, und es werden spezifische Codebeispiele bereitgestellt. Die Drag-and-Drop-Sortierfunktion ist in vielen Anwendungen sehr verbreitet. Sie kann beispielsweise zum Implementieren der Drag-and-Drop-Sortierung von Listen, der Drag-and-Drop-Sortierung von Symbolen usw. verwendet werden. Nachfolgend listen wir auf

Entdecken Sie die zugrunde liegenden Prinzipien und die Algorithmusauswahl der C++-Sortierfunktion Entdecken Sie die zugrunde liegenden Prinzipien und die Algorithmusauswahl der C++-Sortierfunktion Apr 02, 2024 pm 05:36 PM

Die unterste Ebene der C++-Sortierfunktion verwendet die Zusammenführungssortierung, ihre Komplexität beträgt O(nlogn) und bietet verschiedene Auswahlmöglichkeiten für Sortieralgorithmen, einschließlich schneller Sortierung, Heap-Sortierung und stabiler Sortierung.

Array mit der Array.Sort-Funktion in C# sortieren Array mit der Array.Sort-Funktion in C# sortieren Nov 18, 2023 am 10:37 AM

Titel: Beispiel für die Verwendung der Array.Sort-Funktion zum Sortieren eines Arrays in C#. Text: In C# ist Array eine häufig verwendete Datenstruktur, und häufig sind Array-Sortiervorgänge erforderlich. C# stellt die Array-Klasse bereit, die über die Sort-Methode verfügt, um Arrays bequem zu sortieren. In diesem Artikel wird gezeigt, wie Sie ein Array mithilfe der Array.Sort-Funktion in C# sortieren, und es werden spezifische Codebeispiele bereitgestellt. Zunächst müssen wir die grundlegende Verwendung der Array.Sort-Funktion verstehen. Array.So

So sortieren Sie eine Liste mithilfe der List.Sort-Funktion in C# So sortieren Sie eine Liste mithilfe der List.Sort-Funktion in C# Nov 17, 2023 am 10:58 AM

So sortieren Sie eine Liste mithilfe der List.Sort-Funktion in C#. In der Programmiersprache C# müssen wir die Liste häufig sortieren. Die Sortierfunktion der List-Klasse ist ein leistungsstarkes Werkzeug, das für diesen Zweck entwickelt wurde. In diesem Artikel wird die Verwendung der List.Sort-Funktion in C# zum Sortieren einer Liste vorgestellt und spezifische Codebeispiele bereitgestellt, um den Lesern zu helfen, diese Funktion besser zu verstehen und anzuwenden. Die List.Sort-Funktion ist eine Mitgliedsfunktion der List-Klasse, die zum Sortieren von Elementen in der Liste verwendet wird. Diese Funktion empfängt

Warum gibt list.sort() in Python keine sortierte Liste zurück? Warum gibt list.sort() in Python keine sortierte Liste zurück? Sep 18, 2023 am 09:29 AM

Beispiel In diesem Beispiel schauen wir uns zunächst die Verwendung von list.sort() an, bevor wir fortfahren. Hier haben wir eine Liste erstellt und sie mit der Methode sort() in aufsteigender Reihenfolge sortiert - #CreatingaListmyList=["Jacob","Harry","Mark","Anthony"]#DisplayingtheListprint("List=",myList)# SorttheListsinAscendingOrdermyList .sort(

Listensortierung: Detaillierte Erläuterung der Python-Methoden sort, sorted und numpy.argsort Listensortierung: Detaillierte Erläuterung der Python-Methoden sort, sorted und numpy.argsort Jun 10, 2023 am 09:22 AM

Bei der Python-Programmierung ist es oft notwendig, Listen oder Arrays zu sortieren. Python bietet eine Vielzahl von Sortiermethoden, darunter sort, sorted, numpy.argsort usw. In diesem Artikel werden die Verwendung und Vorsichtsmaßnahmen dieser Sortiermethoden ausführlich vorgestellt. 1. Sortiermethode Die Sortiermethode ist eine integrierte Methode in Python-Listen. Sie kann die Liste direkt sortieren (d. h. sie gibt einen Wert zurück, generiert aber kein neues Sortierobjekt) und erfordert keine zusätzlichen Importbibliotheken. Die Sortiermethode hat zwei Parameter: k

Verwenden Sie die PHP-Funktion „sort', um ein Array in aufsteigender Reihenfolge zu sortieren Verwenden Sie die PHP-Funktion „sort', um ein Array in aufsteigender Reihenfolge zu sortieren Jul 25, 2023 am 09:28 AM

Sortieren Sie ein Array in aufsteigender Reihenfolge mit der PHP-Funktion „sort“. In PHP können Sie ein Array mithilfe integrierter Funktionen einfach sortieren. Unter diesen ist die Sortierfunktion eine der am häufigsten verwendeten Funktionen, die das Array in aufsteigender Reihenfolge sortieren kann. In diesem Artikel wird die Verwendung der Sortierfunktion vorgestellt und entsprechende Codebeispiele gegeben. Die Syntax der Sortierfunktion lautet wie folgt: sort(array&$array,int$sort_flags=SORT_REGULAR):boo

So verwenden Sie die Sortierfunktion „Sortieren'. So verwenden Sie die Sortierfunktion „Sortieren'. Sep 04, 2023 am 11:11 AM

Verwendung der Sortierfunktion sort: 1. Sortieren Sie die Liste. Standardmäßig sortiert die Sortierfunktion in aufsteigender Reihenfolge, sodass die endgültigen Ausgabeergebnisse in der Reihenfolge von klein nach groß angeordnet werden nach der Größe der Elemente, sodass die endgültigen Ausgabeergebnisse in der Reihenfolge von klein nach groß angeordnet sind. 3. Sortieren Sie das Wörterbuch. Da das Wörterbuch ungeordnet ist, wird weiterhin ein Lambda-Ausdruck verwendet Wert des Schlüsselparameters, um die Grundlage für die Sortierung anzugeben.

See all articles