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> ?>
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사
어 ass 신 크리드 그림자 : 조개 수수께끼 솔루션
3 몇 주 전ByDDD
Windows 11 KB5054979의 새로운 기능 및 업데이트 문제를 해결하는 방법
2 몇 주 전ByDDD
Atomfall에서 크레인 제어 키 카드를 찾을 수 있습니다
3 몇 주 전ByDDD
R.E.P.O. 저축 설명 (및 파일 저장)
1 몇 달 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

Dreamweaver Mac版
시각적 웹 개발 도구

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.
