This commit is contained in:
krahets
2023-11-09 05:13:54 +08:00
parent 9a09f9407e
commit 3f666fa676
85 changed files with 619 additions and 610 deletions

View File

@@ -3388,7 +3388,7 @@
<li><strong>借助 <code>counter</code> 统计 <code>nums</code> 中各数字的出现次数</strong>,其中 <code>counter[num]</code> 对应数字 <code>num</code> 的出现次数。统计方法很简单,只需遍历 <code>nums</code>(设当前数字为 <code>num</code>),每轮将 <code>counter[num]</code> 增加 <span class="arithmatex">\(1\)</span> 即可。</li>
<li><strong>由于 <code>counter</code> 的各个索引天然有序,因此相当于所有数字已经被排序好了</strong>。接下来,我们遍历 <code>counter</code> ,根据各数字的出现次数,将它们按从小到大的顺序填入 <code>nums</code> 即可。</li>
</ol>
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_overview.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="计数排序流程" src="../counting_sort.assets/counting_sort_overview.png" /></a></p>
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_overview.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="计数排序流程" class="animation-figure" src="../counting_sort.assets/counting_sort_overview.png" /></a></p>
<p align="center"> 图 11-16 &nbsp; 计数排序流程 </p>
<div class="tabbed-set tabbed-alternate" data-tabs="1:12"><input checked="checked" id="__tabbed_1_1" name="__tabbed_1" type="radio" /><input id="__tabbed_1_2" name="__tabbed_1" type="radio" /><input id="__tabbed_1_3" name="__tabbed_1" type="radio" /><input id="__tabbed_1_4" name="__tabbed_1" type="radio" /><input id="__tabbed_1_5" name="__tabbed_1" type="radio" /><input id="__tabbed_1_6" name="__tabbed_1" type="radio" /><input id="__tabbed_1_7" name="__tabbed_1" type="radio" /><input id="__tabbed_1_8" name="__tabbed_1" type="radio" /><input id="__tabbed_1_9" name="__tabbed_1" type="radio" /><input id="__tabbed_1_10" name="__tabbed_1" type="radio" /><input id="__tabbed_1_11" name="__tabbed_1" type="radio" /><input id="__tabbed_1_12" name="__tabbed_1" type="radio" /><div class="tabbed-labels"><label for="__tabbed_1_1">Python</label><label for="__tabbed_1_2">C++</label><label for="__tabbed_1_3">Java</label><label for="__tabbed_1_4">C#</label><label for="__tabbed_1_5">Go</label><label for="__tabbed_1_6">Swift</label><label for="__tabbed_1_7">JS</label><label for="__tabbed_1_8">TS</label><label for="__tabbed_1_9">Dart</label><label for="__tabbed_1_10">Rust</label><label for="__tabbed_1_11">C</label><label for="__tabbed_1_12">Zig</label></div>
@@ -3689,28 +3689,28 @@
<div class="tabbed-set tabbed-alternate" data-tabs="2:8"><input checked="checked" id="__tabbed_2_1" name="__tabbed_2" type="radio" /><input id="__tabbed_2_2" name="__tabbed_2" type="radio" /><input id="__tabbed_2_3" name="__tabbed_2" type="radio" /><input id="__tabbed_2_4" name="__tabbed_2" type="radio" /><input id="__tabbed_2_5" name="__tabbed_2" type="radio" /><input id="__tabbed_2_6" name="__tabbed_2" type="radio" /><input id="__tabbed_2_7" name="__tabbed_2" type="radio" /><input id="__tabbed_2_8" name="__tabbed_2" type="radio" /><div class="tabbed-labels"><label for="__tabbed_2_1">&lt;1&gt;</label><label for="__tabbed_2_2">&lt;2&gt;</label><label for="__tabbed_2_3">&lt;3&gt;</label><label for="__tabbed_2_4">&lt;4&gt;</label><label for="__tabbed_2_5">&lt;5&gt;</label><label for="__tabbed_2_6">&lt;6&gt;</label><label for="__tabbed_2_7">&lt;7&gt;</label><label for="__tabbed_2_8">&lt;8&gt;</label></div>
<div class="tabbed-content">
<div class="tabbed-block">
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step1.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="计数排序步骤" src="../counting_sort.assets/counting_sort_step1.png" /></a></p>
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step1.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="计数排序步骤" class="animation-figure" src="../counting_sort.assets/counting_sort_step1.png" /></a></p>
</div>
<div class="tabbed-block">
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step2.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="counting_sort_step2" src="../counting_sort.assets/counting_sort_step2.png" /></a></p>
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step2.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="counting_sort_step2" class="animation-figure" src="../counting_sort.assets/counting_sort_step2.png" /></a></p>
</div>
<div class="tabbed-block">
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step3.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="counting_sort_step3" src="../counting_sort.assets/counting_sort_step3.png" /></a></p>
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step3.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="counting_sort_step3" class="animation-figure" src="../counting_sort.assets/counting_sort_step3.png" /></a></p>
</div>
<div class="tabbed-block">
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step4.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="counting_sort_step4" src="../counting_sort.assets/counting_sort_step4.png" /></a></p>
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step4.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="counting_sort_step4" class="animation-figure" src="../counting_sort.assets/counting_sort_step4.png" /></a></p>
</div>
<div class="tabbed-block">
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step5.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="counting_sort_step5" src="../counting_sort.assets/counting_sort_step5.png" /></a></p>
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step5.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="counting_sort_step5" class="animation-figure" src="../counting_sort.assets/counting_sort_step5.png" /></a></p>
</div>
<div class="tabbed-block">
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step6.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="counting_sort_step6" src="../counting_sort.assets/counting_sort_step6.png" /></a></p>
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step6.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="counting_sort_step6" class="animation-figure" src="../counting_sort.assets/counting_sort_step6.png" /></a></p>
</div>
<div class="tabbed-block">
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step7.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="counting_sort_step7" src="../counting_sort.assets/counting_sort_step7.png" /></a></p>
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step7.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="counting_sort_step7" class="animation-figure" src="../counting_sort.assets/counting_sort_step7.png" /></a></p>
</div>
<div class="tabbed-block">
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step8.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="counting_sort_step8" src="../counting_sort.assets/counting_sort_step8.png" /></a></p>
<p><a class="glightbox" href="../counting_sort.assets/counting_sort_step8.png" data-type="image" data-width="100%" data-height="auto" data-desc-position="bottom"><img alt="counting_sort_step8" class="animation-figure" src="../counting_sort.assets/counting_sort_step8.png" /></a></p>
</div>
</div>
</div>