Quick Sort In-place Implementation,quicksort
在线运行PHP http://www.compileonline.com/execute_php_online.php
<span> 1</span> <?<span>php </span><span> 2</span> <span>function</span> swap( &<span>$a</span>, &<span>$b</span><span> ) </span><span> 3</span> <span>{ </span><span> 4</span> <span>$c</span> = <span>$a</span><span>; </span><span> 5</span> <span>$a</span> = <span>$b</span><span>; </span><span> 6</span> <span>$b</span> = <span>$c</span><span>; </span><span> 7</span> <span>} </span><span> 8</span> <span> 9</span> <span>/*</span><span>* </span><span>10</span> <span>* quick sort </span><span>11</span> <span>* ascend </span><span>12</span> <span>* in-place </span><span>13</span> <span>*/</span> <span>14</span> <span>function</span> quick_sort( &<span>$a</span><span> ) </span><span>15</span> <span>{ </span><span>16</span> <span>$s</span> = <span>count</span>( <span>$a</span> ); <span>//</span><span> size of a</span> <span>17</span> <span>if</span> ( <span>$s</span> < 2 ) <span>return</span><span>; </span><span>18</span> <span>$i</span> = 0; <span>//</span><span> index of pivot, for tracking pivot</span> <span>19</span> <span>$pivot</span> = <span>$a</span>[<span>$i</span><span>]; </span><span>20</span> <span>$l</span> = 0; <span>//</span><span> swap listener, if listens no swap, sort fini </span><span>21</span> <span>22</span> <span> // swap those smaller than pivot to the left</span> <span>23</span> <span>for</span> ( <span>$m</span> = 0; <span>$m</span> < <span>$s</span>; <span>$m</span>++<span> ) </span><span>24</span> <span> { </span><span>25</span> <span>if</span> ( <span>$a</span>[<span>$m</span>] < <span>$a</span>[<span>$i</span><span>] ) </span><span>26</span> <span> { </span><span>27</span> swap( <span>$a</span>[<span>$m</span>], <span>$a</span>[<span>$i</span><span>] ); </span><span>28</span> <span>$i</span> = <span>$m</span><span>; </span><span>29</span> <span>$l</span>++<span>; </span><span>30</span> <span> } </span><span>31</span> <span> } </span><span>32</span> <span>33</span> <span>//</span><span> swap those larger than pivot to the right</span> <span>34</span> <span>for</span> ( <span>$n</span> = 0; <span>$n</span> < <span>$i</span>; <span>$n</span>++<span>) </span><span>35</span> <span> { </span><span>36</span> <span>if</span> ( <span>$a</span>[<span>$n</span>] > <span>$a</span>[<span>$i</span><span>] ) </span><span>37</span> <span> { </span><span>38</span> swap( <span>$a</span>[<span>$n</span>], <span>$a</span>[<span>$i</span><span>] ); </span><span>39</span> <span>$i</span> = <span>$n</span><span>; </span><span>40</span> <span>$l</span>++<span>; </span><span>41</span> <span> } </span><span>42</span> <span> } </span><span>43</span> <span>44</span> <span>if</span> ( <span>$l</span> == 0 ) <span>return</span><span>; </span><span>45</span> <span>else</span> <span>$l</span> = 0<span>; </span><span>46</span> quick_sort( <span>$a</span><span> ); </span><span>47</span> <span>} </span><span>48</span> <span>49</span> <span>$arr</span> = <span>range</span>( 9, 0<span> ); </span><span>50</span> quick_sort( <span>$arr</span><span> ); </span><span>51</span> <span>echo</span> <span>implode</span>( ', ', <span>$arr</span><span> ); </span><span>52</span> ?>

Uniapp是一款跨平台的开发框架,其强大的跨端能力使得开发者可以快速方便地开发出各种应用。在Uniapp中实现拖拽排序和拖拽操作也是非常简单的,并且可以支持多种组件和元素的拖拽操作。本文将介绍如何使用Uniapp实现拖拽排序和拖拽操作,并提供具体的代码示例。拖拽排序功能在很多应用中都非常常见,例如可以用于实现列表的拖拽排序,图标的拖拽排序等。下面我们以列表

C++sort函数底层采用归并排序,其复杂度为O(nlogn),并提供不同的排序算法选择,包括快速排序、堆排序和稳定排序。

标题:C#中使用Array.Sort函数对数组进行排序的示例正文:在C#中,数组是一种常用的数据结构,经常需要对数组进行排序操作。C#提供了Array类,其中有Sort方法可以方便地对数组进行排序。本文将演示如何使用C#中的Array.Sort函数对数组进行排序,并提供具体的代码示例。首先,我们需要了解一下Array.Sort函数的基本用法。Array.So

如何使用C#中的List.Sort函数对列表进行排序在C#编程语言中,我们经常需要对列表进行排序操作。而List类的Sort函数正是为此设计的一个强大工具。本文将介绍如何使用C#中的List.Sort函数对列表进行排序,并提供具体的代码示例,帮助读者更好地理解和应用该函数。List.Sort函数是List类的一个成员函数,用于对列表中的元素进行排序。该函数接

示例在这个例子中,我们先看看list.sort()的用法,然后再继续。在这里,我们创建了一个列表并使用sort()方法按升序排序-#CreatingaListmyList=["Jacob","Harry","Mark","Anthony"]#DisplayingtheListprint("List=",myList)#SorttheListsinAscendingOrdermyList.sort(

在Python编程中,经常需要对列表或数组进行排序操作。Python提供了多种排序方法,包括sort、sorted和numpy.argsort等。本文将详细介绍这些排序方法的使用方法和注意事项。一、sort方法sort方法是Python列表中内置的方法,可以对列表进行原地排序(即有返回值但不产生新的排序对象),不需要额外的导入库。sort方法的参数有两个:k

sort排序函数的用法:1、对列表进行排序,默认情况下,sort函数按升序排序,因此最终输出的结果是按从小到大的顺序排列的;2、对元组进行排序,默认情况下,sort函数按元素的大小进行排序,因此最终输出的结果是按从小到大的顺序排列的;3、对字典进行排序,由于字典是无序的,因此排序后的结果仍然是原来的字典,使用一个lambda表达式作为key参数的值,用于指定排序的依据。

使用PHP函数"sort"对数组按升序进行排序在PHP中,可以很方便地使用内置函数来对数组进行排序。其中,sort函数是最常用的函数之一,可以对数组按照升序进行排序。本文将介绍如何使用sort函数,并给出相应的代码示例。sort函数的语法如下:sort(array&$array,int$sort_flags=SORT_REGULAR):boo


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

ドリームウィーバー CS6
ビジュアル Web 開発ツール

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ホットトピック









