教程集 www.jiaochengji.com
教程集 >  Golang编程  >  golang教程  >  正文 golang快速排序算法

golang快速排序算法

发布时间:2021-12-05   编辑:jiaochengji.com
教程集为您提供golang快速排序算法等资源,欢迎您收藏本站,我们将为您提供最新的golang快速排序算法资源
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"><path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"/></svg><pre><code class="lang-go hljs"><span class="token keyword">func</span> <span class="token function">quickSort</span><span class="token punctuation">(</span>values <span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token builtin">int</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> length<span class="token operator">:=</span><span class="token function">len</span><span class="token punctuation">(</span>values<span class="token punctuation">)</span> <span class="token keyword">if</span> length <span class="token operator"><=</span> <span class="token number">1</span> <span class="token punctuation">{</span> <span class="token keyword">return</span> <span class="token punctuation">}</span> <span class="token keyword">if</span> length <span class="token operator">==</span> <span class="token number">2</span> <span class="token punctuation">{</span> <span class="token keyword">if</span> values<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span> <span class="token operator">></span> values<span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">]</span> <span class="token punctuation">{</span> values<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">,</span> values<span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">]</span> <span class="token operator">=</span> values<span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">]</span><span class="token punctuation">,</span> values<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span> <span class="token punctuation">}</span> <span class="token keyword">return</span> <span class="token punctuation">}</span> mid <span class="token operator">:=</span> values<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span> head<span class="token punctuation">,</span> tail <span class="token operator">:=</span> <span class="token number">1</span><span class="token punctuation">,</span> length<span class="token operator">-</span><span class="token number">1</span> <span class="token keyword">for</span> head <span class="token operator"><</span> tail<span class="token operator"> </span><span class="token number">1</span> <span class="token punctuation">{</span> <span class="token keyword">if</span> values<span class="token punctuation">[</span>head<span class="token punctuation">]</span> <span class="token operator">></span> mid <span class="token punctuation">{</span> values<span class="token punctuation">[</span>head<span class="token punctuation">]</span><span class="token punctuation">,</span> values<span class="token punctuation">[</span>tail<span class="token punctuation">]</span> <span class="token operator">=</span> values<span class="token punctuation">[</span>tail<span class="token punctuation">]</span><span class="token punctuation">,</span> values<span class="token punctuation">[</span>head<span class="token punctuation">]</span> tail<span class="token operator">--</span> <span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token punctuation">{</span> head<span class="token operator"> </span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token keyword">if</span> tail <span class="token operator">==</span> <span class="token function">len</span><span class="token punctuation">(</span>values<span class="token punctuation">)</span><span class="token operator">-</span><span class="token number">1</span> <span class="token punctuation">{</span> values<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">,</span> values<span class="token punctuation">[</span>tail<span class="token punctuation">]</span> <span class="token operator">=</span> values<span class="token punctuation">[</span>tail<span class="token punctuation">]</span><span class="token punctuation">,</span> values<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span> <span class="token function">quickSort</span><span class="token punctuation">(</span>values<span class="token punctuation">[</span><span class="token punctuation">:</span>tail<span class="token punctuation">]</span><span class="token punctuation">)</span> <span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token punctuation">{</span> <span class="token function">quickSort</span><span class="token punctuation">(</span>values<span class="token punctuation">[</span><span class="token punctuation">:</span>head<span class="token punctuation">]</span><span class="token punctuation">)</span> <span class="token function">quickSort</span><span class="token punctuation">(</span>values<span class="token punctuation">[</span>head<span class="token punctuation">:</span><span class="token punctuation">]</span><span class="token punctuation">)</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre> 到此这篇关于“golang快速排序算法”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!

您可能感兴趣的文章:
数据结构和算法(Golang实现)(10)基础知识-算法复杂度主方法
javascript排序算法代码解析
【golang】算法 -- 快速排序
php排序算法 PHP版快速排序与冒泡排序
快速排序算法 原理及golang语言实现
javascript常见排序算法实现代码
php 实现冒泡排序的简单例子
JS随机快速排序的代码分享
php实用快速排序算法的实例代码
php冒泡排序算法实现代码

[关闭]
~ ~