mirror of
https://github.com/krahets/hello-algo.git
synced 2026-04-03 02:30:25 +08:00
deploy
This commit is contained in:
@@ -2945,7 +2945,7 @@
|
||||
<a id="__codelineno-16-29" name="__codelineno-16-29" href="#__codelineno-16-29"></a>
|
||||
<a id="__codelineno-16-30" name="__codelineno-16-30" href="#__codelineno-16-30"></a><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="nc">linkedListDeque</span><span class="w"> </span><span class="n">linkedListDeque</span><span class="p">;</span>
|
||||
<a id="__codelineno-16-31" name="__codelineno-16-31" href="#__codelineno-16-31"></a>
|
||||
<a id="__codelineno-16-32" name="__codelineno-16-32" href="#__codelineno-16-32"></a><span class="cm">/* 构造j */</span>
|
||||
<a id="__codelineno-16-32" name="__codelineno-16-32" href="#__codelineno-16-32"></a><span class="cm">/* 构造函数 */</span>
|
||||
<a id="__codelineno-16-33" name="__codelineno-16-33" href="#__codelineno-16-33"></a><span class="n">linkedListDeque</span><span class="w"> </span><span class="o">*</span><span class="nf">newLinkedListDeque</span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-16-34" name="__codelineno-16-34" href="#__codelineno-16-34"></a><span class="w"> </span><span class="n">linkedListDeque</span><span class="w"> </span><span class="o">*</span><span class="n">deque</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="n">linkedListDeque</span><span class="w"> </span><span class="o">*</span><span class="p">)</span><span class="n">malloc</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">linkedListDeque</span><span class="p">));</span>
|
||||
<a id="__codelineno-16-35" name="__codelineno-16-35" href="#__codelineno-16-35"></a><span class="w"> </span><span class="n">deque</span><span class="o">-></span><span class="n">front</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">NULL</span><span class="p">;</span>
|
||||
@@ -3481,14 +3481,14 @@
|
||||
<a id="__codelineno-20-79" name="__codelineno-20-79" href="#__codelineno-20-79"></a><span class="w"> </span><span class="cm">/* 访问队首元素 */</span>
|
||||
<a id="__codelineno-20-80" name="__codelineno-20-80" href="#__codelineno-20-80"></a><span class="w"> </span><span class="kd">public</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="nf">peekFirst</span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-20-81" name="__codelineno-20-81" href="#__codelineno-20-81"></a><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">isEmpty</span><span class="p">())</span>
|
||||
<a id="__codelineno-20-82" name="__codelineno-20-82" href="#__codelineno-20-82"></a><span class="w"> </span><span class="k">throw</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">EmptyStackException</span><span class="p">();</span>
|
||||
<a id="__codelineno-20-82" name="__codelineno-20-82" href="#__codelineno-20-82"></a><span class="w"> </span><span class="k">throw</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">IndexOutOfBoundsException</span><span class="p">();</span>
|
||||
<a id="__codelineno-20-83" name="__codelineno-20-83" href="#__codelineno-20-83"></a><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">nums</span><span class="o">[</span><span class="n">front</span><span class="o">]</span><span class="p">;</span>
|
||||
<a id="__codelineno-20-84" name="__codelineno-20-84" href="#__codelineno-20-84"></a><span class="w"> </span><span class="p">}</span>
|
||||
<a id="__codelineno-20-85" name="__codelineno-20-85" href="#__codelineno-20-85"></a>
|
||||
<a id="__codelineno-20-86" name="__codelineno-20-86" href="#__codelineno-20-86"></a><span class="w"> </span><span class="cm">/* 访问队尾元素 */</span>
|
||||
<a id="__codelineno-20-87" name="__codelineno-20-87" href="#__codelineno-20-87"></a><span class="w"> </span><span class="kd">public</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="nf">peekLast</span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-20-88" name="__codelineno-20-88" href="#__codelineno-20-88"></a><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">isEmpty</span><span class="p">())</span>
|
||||
<a id="__codelineno-20-89" name="__codelineno-20-89" href="#__codelineno-20-89"></a><span class="w"> </span><span class="k">throw</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">EmptyStackException</span><span class="p">();</span>
|
||||
<a id="__codelineno-20-89" name="__codelineno-20-89" href="#__codelineno-20-89"></a><span class="w"> </span><span class="k">throw</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">IndexOutOfBoundsException</span><span class="p">();</span>
|
||||
<a id="__codelineno-20-90" name="__codelineno-20-90" href="#__codelineno-20-90"></a><span class="w"> </span><span class="c1">// 计算尾元素索引</span>
|
||||
<a id="__codelineno-20-91" name="__codelineno-20-91" href="#__codelineno-20-91"></a><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">last</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">index</span><span class="p">(</span><span class="n">front</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="n">queSize</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mi">1</span><span class="p">);</span>
|
||||
<a id="__codelineno-20-92" name="__codelineno-20-92" href="#__codelineno-20-92"></a><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">nums</span><span class="o">[</span><span class="n">last</span><span class="o">]</span><span class="p">;</span>
|
||||
@@ -3683,23 +3683,25 @@
|
||||
<a id="__codelineno-22-65" name="__codelineno-22-65" href="#__codelineno-22-65"></a>
|
||||
<a id="__codelineno-22-66" name="__codelineno-22-66" href="#__codelineno-22-66"></a> <span class="k">def</span> <span class="nf">peek_first</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">int</span><span class="p">:</span>
|
||||
<a id="__codelineno-22-67" name="__codelineno-22-67" href="#__codelineno-22-67"></a><span class="w"> </span><span class="sd">"""访问队首元素"""</span>
|
||||
<a id="__codelineno-22-68" name="__codelineno-22-68" href="#__codelineno-22-68"></a> <span class="k">assert</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">is_empty</span><span class="p">(),</span> <span class="s2">"双向队列为空"</span>
|
||||
<a id="__codelineno-22-69" name="__codelineno-22-69" href="#__codelineno-22-69"></a> <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">__nums</span><span class="p">[</span><span class="bp">self</span><span class="o">.</span><span class="n">__front</span><span class="p">]</span>
|
||||
<a id="__codelineno-22-70" name="__codelineno-22-70" href="#__codelineno-22-70"></a>
|
||||
<a id="__codelineno-22-71" name="__codelineno-22-71" href="#__codelineno-22-71"></a> <span class="k">def</span> <span class="nf">peek_last</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">int</span><span class="p">:</span>
|
||||
<a id="__codelineno-22-72" name="__codelineno-22-72" href="#__codelineno-22-72"></a><span class="w"> </span><span class="sd">"""访问队尾元素"""</span>
|
||||
<a id="__codelineno-22-73" name="__codelineno-22-73" href="#__codelineno-22-73"></a> <span class="k">assert</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">is_empty</span><span class="p">(),</span> <span class="s2">"双向队列为空"</span>
|
||||
<a id="__codelineno-22-74" name="__codelineno-22-74" href="#__codelineno-22-74"></a> <span class="c1"># 计算尾元素索引</span>
|
||||
<a id="__codelineno-22-75" name="__codelineno-22-75" href="#__codelineno-22-75"></a> <span class="n">last</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">index</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">__front</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">__size</span> <span class="o">-</span> <span class="mi">1</span><span class="p">)</span>
|
||||
<a id="__codelineno-22-76" name="__codelineno-22-76" href="#__codelineno-22-76"></a> <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">__nums</span><span class="p">[</span><span class="n">last</span><span class="p">]</span>
|
||||
<a id="__codelineno-22-77" name="__codelineno-22-77" href="#__codelineno-22-77"></a>
|
||||
<a id="__codelineno-22-78" name="__codelineno-22-78" href="#__codelineno-22-78"></a> <span class="k">def</span> <span class="nf">to_array</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">list</span><span class="p">[</span><span class="nb">int</span><span class="p">]:</span>
|
||||
<a id="__codelineno-22-79" name="__codelineno-22-79" href="#__codelineno-22-79"></a><span class="w"> </span><span class="sd">"""返回数组用于打印"""</span>
|
||||
<a id="__codelineno-22-80" name="__codelineno-22-80" href="#__codelineno-22-80"></a> <span class="c1"># 仅转换有效长度范围内的列表元素</span>
|
||||
<a id="__codelineno-22-81" name="__codelineno-22-81" href="#__codelineno-22-81"></a> <span class="n">res</span> <span class="o">=</span> <span class="p">[]</span>
|
||||
<a id="__codelineno-22-82" name="__codelineno-22-82" href="#__codelineno-22-82"></a> <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">__size</span><span class="p">):</span>
|
||||
<a id="__codelineno-22-83" name="__codelineno-22-83" href="#__codelineno-22-83"></a> <span class="n">res</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">__nums</span><span class="p">[</span><span class="bp">self</span><span class="o">.</span><span class="n">index</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">__front</span> <span class="o">+</span> <span class="n">i</span><span class="p">)])</span>
|
||||
<a id="__codelineno-22-84" name="__codelineno-22-84" href="#__codelineno-22-84"></a> <span class="k">return</span> <span class="n">res</span>
|
||||
<a id="__codelineno-22-68" name="__codelineno-22-68" href="#__codelineno-22-68"></a> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">is_empty</span><span class="p">():</span>
|
||||
<a id="__codelineno-22-69" name="__codelineno-22-69" href="#__codelineno-22-69"></a> <span class="k">raise</span> <span class="ne">IndexError</span><span class="p">(</span><span class="s2">"双向队列为空"</span><span class="p">)</span>
|
||||
<a id="__codelineno-22-70" name="__codelineno-22-70" href="#__codelineno-22-70"></a> <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">__nums</span><span class="p">[</span><span class="bp">self</span><span class="o">.</span><span class="n">__front</span><span class="p">]</span>
|
||||
<a id="__codelineno-22-71" name="__codelineno-22-71" href="#__codelineno-22-71"></a>
|
||||
<a id="__codelineno-22-72" name="__codelineno-22-72" href="#__codelineno-22-72"></a> <span class="k">def</span> <span class="nf">peek_last</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">int</span><span class="p">:</span>
|
||||
<a id="__codelineno-22-73" name="__codelineno-22-73" href="#__codelineno-22-73"></a><span class="w"> </span><span class="sd">"""访问队尾元素"""</span>
|
||||
<a id="__codelineno-22-74" name="__codelineno-22-74" href="#__codelineno-22-74"></a> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">is_empty</span><span class="p">():</span>
|
||||
<a id="__codelineno-22-75" name="__codelineno-22-75" href="#__codelineno-22-75"></a> <span class="k">raise</span> <span class="ne">IndexError</span><span class="p">(</span><span class="s2">"双向队列为空"</span><span class="p">)</span>
|
||||
<a id="__codelineno-22-76" name="__codelineno-22-76" href="#__codelineno-22-76"></a> <span class="c1"># 计算尾元素索引</span>
|
||||
<a id="__codelineno-22-77" name="__codelineno-22-77" href="#__codelineno-22-77"></a> <span class="n">last</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">index</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">__front</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">__size</span> <span class="o">-</span> <span class="mi">1</span><span class="p">)</span>
|
||||
<a id="__codelineno-22-78" name="__codelineno-22-78" href="#__codelineno-22-78"></a> <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">__nums</span><span class="p">[</span><span class="n">last</span><span class="p">]</span>
|
||||
<a id="__codelineno-22-79" name="__codelineno-22-79" href="#__codelineno-22-79"></a>
|
||||
<a id="__codelineno-22-80" name="__codelineno-22-80" href="#__codelineno-22-80"></a> <span class="k">def</span> <span class="nf">to_array</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">list</span><span class="p">[</span><span class="nb">int</span><span class="p">]:</span>
|
||||
<a id="__codelineno-22-81" name="__codelineno-22-81" href="#__codelineno-22-81"></a><span class="w"> </span><span class="sd">"""返回数组用于打印"""</span>
|
||||
<a id="__codelineno-22-82" name="__codelineno-22-82" href="#__codelineno-22-82"></a> <span class="c1"># 仅转换有效长度范围内的列表元素</span>
|
||||
<a id="__codelineno-22-83" name="__codelineno-22-83" href="#__codelineno-22-83"></a> <span class="n">res</span> <span class="o">=</span> <span class="p">[]</span>
|
||||
<a id="__codelineno-22-84" name="__codelineno-22-84" href="#__codelineno-22-84"></a> <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">__size</span><span class="p">):</span>
|
||||
<a id="__codelineno-22-85" name="__codelineno-22-85" href="#__codelineno-22-85"></a> <span class="n">res</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">__nums</span><span class="p">[</span><span class="bp">self</span><span class="o">.</span><span class="n">index</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">__front</span> <span class="o">+</span> <span class="n">i</span><span class="p">)])</span>
|
||||
<a id="__codelineno-22-86" name="__codelineno-22-86" href="#__codelineno-22-86"></a> <span class="k">return</span> <span class="n">res</span>
|
||||
</code></pre></div>
|
||||
</div>
|
||||
<div class="tabbed-block">
|
||||
|
||||
Reference in New Issue
Block a user