{"id":1793,"date":"2017-02-18T08:41:05","date_gmt":"2017-02-18T00:41:05","guid":{"rendered":"http:\/\/cn.hostease.com\/xueyuan\/?p=1793"},"modified":"2025-01-07T15:43:41","modified_gmt":"2025-01-07T07:43:41","slug":"%e7%bb%8f%e5%85%b8%e7%ae%97%e6%b3%95%e9%a2%98%e6%af%8f%e6%97%a5%e6%bc%94%e7%bb%83-%e7%ac%ac%e4%b9%9d%e9%a2%98-%e4%bc%98%e5%85%88%e9%98%9f%e5%88%97","status":"publish","type":"post","link":"https:\/\/cn.hostease.com\/xueyuan\/jishu\/%e7%bb%8f%e5%85%b8%e7%ae%97%e6%b3%95%e9%a2%98%e6%af%8f%e6%97%a5%e6%bc%94%e7%bb%83-%e7%ac%ac%e4%b9%9d%e9%a2%98-%e4%bc%98%e5%85%88%e9%98%9f%e5%88%97\/","title":{"rendered":"\u7ecf\u5178\u7b97\u6cd5\u9898\u6bcf\u65e5\u6f14\u7ec3\u2014\u2014\u7b2c\u4e5d\u9898 \u4f18\u5148\u961f\u5217"},"content":{"rendered":"\n<p>\u4f18\u5148\u961f\u5217\uff0c\u975e\u5806\u83ab\u5c5e\u3002<\/p>\n\n\n\n<p>\u4e00\uff1a\u5806\u7ed3\u6784<\/p>\n\n\n\n<p>1:\u6027\u8d28<\/p>\n\n\n\n<p>\u5806\u662f\u4e00\u79cd\u5f88\u677e\u6563\u7684\u5e8f\u7ed3\u6784\u6811\uff0c\u53ea\u4fdd\u5b58\u4e86\u7236\u8282\u70b9\u548c\u5b69\u5b50\u8282\u70b9\u7684\u5927\u5c0f\u5173\u7cfb\uff0c\u5e76\u4e0d\u89c4\u5b9a\u5de6\u53f3\u5b69\u5b50\u7684\u5927\u5c0f\uff0c\u4e0d\u50cf\u6392\u5e8f\u6811\u90a3\u6837\u4e25\u683c\uff0c\u53c8\u56e0\u4e3a\u5806\u662f\u4e00\u79cd\u5b8c\u5168\u4e8c\u53c9<\/p>\n\n\n\n<p>\u6811\uff0c\u8bbe\u8282\u70b9\u4e3ai,\u5219i\/2\u662fi\u7684\u7236\u8282\u70b9\uff0c2i\u662fi\u7684\u5de6\u5b69\u5b50\uff0c2i+1\u662fi\u7684\u53f3\u5b69\u5b50\uff0c\u6240\u4ee5\u5728\u5b9e\u73b0\u65b9\u5f0f\u4e0a\u53ef\u4ee5\u91c7\u7528\u8f7b\u91cf\u7ea7\u7684\u6570\u7ec4\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/dui.png\"><img loading=\"lazy\" decoding=\"async\" width=\"360\" height=\"267\" src=\"https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/dui.png\" alt=\"\" class=\"wp-image-9070\" srcset=\"https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/dui.png 360w, https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/dui-300x223.png 300w\" sizes=\"auto, (max-width: 360px) 100vw, 360px\" \/><\/a><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>2\uff1a\u7528\u9014<\/p>\n\n\n\n<p>\u5982\u679c\u5927\u5bb6\u73a9\u8fc7\u5fae\u8f6f\u7684MSMQ\u7684\u8bdd\uff0c\u6211\u4eec\u53d1\u73b0\u5b83\u5176\u5b9e\u4e5f\u662f\u4e00\u4e2a\u4f18\u5148\u961f\u5217\uff0c\u8fd8\u6709\u521a\u624d\u8bf4\u7684\u6293\u53d6url\uff0c\u4e0d\u8fc7\u5f88\u9057\u61be\uff0c\u4e3a\u4ec0\u4e48.net\u7c7b\u5e93\u4e2d\u6ca1\u6709\u4f18\u5148\u961f\u5217\uff0c\u800cjava1.5<\/p>\n\n\n\n<p>\u4e2d\u5c31\u5df2\u7ecf\u652f\u6301\u4e86\u3002<\/p>\n\n\n\n<p>3\uff1a\u5b9e\u73b0<\/p>\n\n\n\n<p>&lt;1&gt;\u5806\u7ed3\u6784\u8282\u70b9\u5b9a\u4e49\uff1a<\/p>\n\n\n\n<p>\u6211\u4eec\u5728\u6bcf\u4e2a\u8282\u70b9\u4e0a\u5b9a\u4e49\u4e00\u4e2alevel\uff0c\u8868\u793a\u8be5\u8282\u70b9\u7684\u4f18\u5148\u7ea7\uff0c\u4e5f\u662f\u6784\u5efa\u5806\u65f6\u91c7\u53d6\u7684\u4f9d\u636e\u3002<\/p>\n\n\n\n<div class=\"cnblogs_code\">\n<pre> 1         \/\/\/ &lt;summary&gt;\n 2         \/\/\/ \u5b9a\u4e49\u4e00\u4e2a\u6570\u7ec4\u6765\u5b58\u653e\u8282\u70b9\n 3         \/\/\/ &lt;\/summary&gt;\n 4         private List&lt;HeapNode&gt; nodeList = new List&lt;HeapNode&gt;();\n 5 \n 6         #region \u5806\u8282\u70b9\u5b9a\u4e49\n 7         \/\/\/ &lt;summary&gt;\n 8         \/\/\/ \u5806\u8282\u70b9\u5b9a\u4e49\n 9         \/\/\/ &lt;\/summary&gt;\n10         public class HeapNode\n11         {\n12             \/\/\/ &lt;summary&gt;\n13             \/\/\/ \u5b9e\u4f53\u6570\u636e\n14             \/\/\/ &lt;\/summary&gt;\n15             public T t { get; set; }\n16 \n17             \/\/\/ &lt;summary&gt;\n18             \/\/\/ \u4f18\u5148\u7ea7\u522b 1-10\u4e2a\u7ea7\u522b (\u4f18\u5148\u7ea7\u522b\u9012\u589e)\n19             \/\/\/ &lt;\/summary&gt;\n20             public int level { get; set; }\n21 \n22             public HeapNode(T t, int level)\n23             {\n24                 this.t = t;\n25                 this.level = level;\n26             }\n27 \n28             public HeapNode() { }\n29         }\n30         #endregion<\/pre>\n<\/div>\n\n\n\n<p>&lt;2&gt; \u5165\u961f\u64cd\u4f5c<\/p>\n\n\n\n<p>\u5165\u961f\u64cd\u4f5c\u65f6\u6211\u4eec\u8981\u6ce8\u610f\u51e0\u4e2a\u95ee\u9898\uff1a<\/p>\n\n\n\n<p>\u2460\uff1a\u5b8c\u5168\u4e8c\u53c9\u6811\u7684\u6784\u5efa\u64cd\u4f5c\u662f\u201c\u4ece\u4e0a\u5230\u4e0b\uff0c\u4ece\u5de6\u5230\u53f3\u201d\u7684\u5f62\u5f0f\uff0c\u6240\u4ee5\u5165\u961f\u7684\u8282\u70b9\u662f\u653e\u5728\u6570\u7ec4\u7684\u6700\u540e\uff0c\u4e5f\u5c31\u662f\u6811\u4e2d\u53f6\u5b50\u5c42\u7684\u6709\u5e8f\u6700\u53f3\u8fb9\u7a7a\u4f4d\u3002<\/p>\n\n\n\n<p>\u2461\uff1a\u5f53\u8282\u70b9\u63d2\u5165\u5230\u6700\u540e\u65f6\uff0c\u6709\u53ef\u80fd\u7834\u574f\u4e86\u5806\u7684\u6027\u8d28\uff0c\u6b64\u65f6\u6211\u4eec\u8981\u8fdb\u884c\u201c\u4e0a\u6ee4\u64cd\u4f5c\u201d\uff0c\u5f53\u7136\u65f6\u95f4\u590d\u6742\u5ea6\u4e3aO(lgN)\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/rudui.png\"><img loading=\"lazy\" decoding=\"async\" width=\"919\" height=\"213\" src=\"https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/rudui.png\" alt=\"\" class=\"wp-image-9071\" srcset=\"https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/rudui.png 919w, https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/rudui-300x70.png 300w, https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/rudui-768x178.png 768w\" sizes=\"auto, (max-width: 919px) 100vw, 919px\" \/><\/a><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>\u5f53\u6211\u5c06\u8282\u70b9\u201c20\u201d\u63d2\u5165\u5230\u5806\u5c3e\u7684\u65f6\u5019\uff0c\u6b64\u65f6\u7834\u574f\u4e86\u5806\u7684\u6027\u8d28\uff0c\u4ece\u56fe\u4e2d\u6211\u4eec\u53ef\u4ee5\u6e05\u695a\u7684\u770b\u5230\u8282\u70b9\u201c20\u201d\u7684\u6574\u4e2a\u4e0a\u6ee4\u8fc7\u7a0b\uff0c\u6709\u610f\u601d\u5427\uff0c\u8fd8\u6709\u4e00\u70b9<\/p>\n\n\n\n<p>\u5c31\u662f\uff1a\u83b7\u53d6\u63d2\u5165\u8282\u70b9\u7684\u7236\u4eb2\u8282\u70b9\u7684\u7b97\u6cd5\u662f\uff1aparent=list.count\/2-1\u3002\u8fd9\u4e5f\u5f97\u76ca\u4e8e\u5b8c\u5168\u4e8c\u53c9\u6811\u7684\u7279\u6027\u3002<\/p>\n\n\n\n<div class=\"cnblogs_code\">\n<pre> 1         #region  \u6dfb\u52a0\u64cd\u4f5c\n 2         \/\/\/ &lt;summary&gt;\n 3         \/\/\/ \u6dfb\u52a0\u64cd\u4f5c\n 4         \/\/\/ &lt;\/summary&gt;\n 5         public void Eequeue(T t, int level = 1)\n 6         {\n 7             \/\/\u5c06\u5f53\u524d\u8282\u70b9\u8ffd\u52a0\u5230\u5806\u5c3e\n 8             nodeList.Add(new HeapNode(t, level));\n 9 \n10             \/\/\u5982\u679c\u53ea\u6709\u4e00\u4e2a\u8282\u70b9\uff0c\u5219\u4e0d\u9700\u8981\u8fdb\u884c\u7b5b\u64cd\u4f5c\n11             if (nodeList.Count == 1)\n12                 return;\n13 \n14             \/\/\u83b7\u53d6\u6700\u540e\u4e00\u4e2a\u975e\u53f6\u5b50\u8282\u70b9\n15             int parent = nodeList.Count \/ 2 - 1;\n16 \n17             \/\/\u5806\u8c03\u6574\n18             UpHeapAdjust(nodeList, parent);\n19         }\n20         #endregion\n21 \n22         #region \u5bf9\u5806\u8fdb\u884c\u4e0a\u6ee4\u64cd\u4f5c\uff0c\u4f7f\u5f97\u6ee1\u8db3\u5806\u6027\u8d28\n23         \/\/\/ &lt;summary&gt;\n24         \/\/\/ \u5bf9\u5806\u8fdb\u884c\u4e0a\u6ee4\u64cd\u4f5c\uff0c\u4f7f\u5f97\u6ee1\u8db3\u5806\u6027\u8d28\n25         \/\/\/ &lt;\/summary&gt;\n26         \/\/\/ &lt;param name=\"nodeList\"&gt;&lt;\/param&gt;\n27         \/\/\/ &lt;param name=\"index\"&gt;\u975e\u53f6\u5b50\u8282\u70b9\u7684\u4e4b\u540e\u6307\u9488\uff08\u8fd9\u91cc\u8981\u6ce8\u610f\uff1a\u6211\u4eec\n28         \/\/\/ \u7684\u7b5b\u64cd\u4f5c\u65f6\u9488\u5bf9\u975e\u53f6\u8282\u70b9\u7684\uff09\n29         \/\/\/ &lt;\/param&gt;\n30         public void UpHeapAdjust(List&lt;HeapNode&gt; nodeList, int parent)\n31         {\n32             while (parent &gt;= 0)\n33             {\n34                 \/\/\u5f53\u524dindex\u8282\u70b9\u7684\u5de6\u5b69\u5b50\n35                 var left = 2 * parent + 1;\n36 \n37                 \/\/\u5f53\u524dindex\u8282\u70b9\u7684\u53f3\u5b69\u5b50\n38                 var right = left + 1;\n39 \n40                 \/\/parent\u5b50\u8282\u70b9\u4e2d\u6700\u5927\u7684\u5b69\u5b50\u8282\u70b9\uff0c\u65b9\u4fbf\u4e8eparent\u8fdb\u884c\u6bd4\u8f83\n41                 \/\/\u9ed8\u8ba4\u4e3aleft\u8282\u70b9\n42                 var max = left;\n43 \n44                 \/\/\u5224\u65ad\u5f53\u524d\u8282\u70b9\u662f\u5426\u6709\u53f3\u5b69\u5b50\n45                 if (right &lt; nodeList.Count)\n46                 {\n47                     \/\/\u5224\u65adparent\u8981\u6bd4\u8f83\u7684\u6700\u5927\u5b50\u8282\u70b9\n48                     max = nodeList[left].level &lt; nodeList[right].level ? right : left;\n49                 }\n50 \n51                 \/\/\u5982\u679cparent\u8282\u70b9\u5c0f\u4e8e\u5b83\u7684\u67d0\u4e2a\u5b50\u8282\u70b9\u7684\u8bdd\uff0c\u6b64\u65f6\u7b5b\u64cd\u4f5c\n52                 if (nodeList[parent].level &lt; nodeList[max].level)\n53                 {\n54                     \/\/\u5b50\u8282\u70b9\u548c\u7236\u8282\u70b9\u8fdb\u884c\u4ea4\u6362\u64cd\u4f5c\n55                     var temp = nodeList[parent];\n56                     nodeList[parent] = nodeList[max];\n57                     nodeList[max] = temp;\n58 \n59                     \/\/\u7ee7\u7eed\u8fdb\u884c\u66f4\u4e0a\u4e00\u5c42\u7684\u8fc7\u6ee4\n60                     parent = (int)Math.Ceiling(parent \/ 2d) - 1;\n61                 }\n62                 else\n63                 {\n64                     break;\n65                 }\n66             }\n67         }\n68         #endregion<\/pre>\n<\/div>\n\n\n\n<p>&lt;3&gt; \u51fa\u961f\u64cd\u4f5c<\/p>\n\n\n\n<p>\u4ece\u56fe\u4e2d\u6211\u4eec\u53ef\u4ee5\u770b\u51fa\uff0c\u4f18\u5148\u7ea7\u6700\u5927\u7684\u8282\u70b9\u4f1a\u5728\u4e00\u9635\u75c9\u631b\u540e\u4e0a\u5347\u5230\u5806\u9876\uff0c\u51fa\u961f\u64cd\u4f5c\u65f6\uff0c\u6211\u4eec\u91c7\u53d6\u7684\u65b9\u6848\u662f\uff1a\u5f39\u51fa\u5806\u9876\u5143\u7d20\uff0c\u7136\u540e\u5c06\u53f6\u5b50\u5c42\u4e2d<\/p>\n\n\n\n<p>\u7684\u6700\u53f3\u5b50\u8282\u70b9\u8d4b\u7ed9\u5806\u9876\uff0c\u540c\u6837\u8fd9\u65f6\u4e5f\u4f1a\u53ef\u80fd\u5b58\u5728\u7834\u574f\u5806\u7684\u6027\u8d28\uff0c\u6700\u540e\u6211\u4eec\u8981\u88ab\u8feb\u8fdb\u884c\u4e0b\u6ee4\u64cd\u4f5c\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/chudui.png\"><img loading=\"lazy\" decoding=\"async\" width=\"859\" height=\"176\" src=\"https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/chudui.png\" alt=\"\" class=\"wp-image-9072\" srcset=\"https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/chudui.png 859w, https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/chudui-300x61.png 300w, https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/chudui-768x157.png 768w\" sizes=\"auto, (max-width: 859px) 100vw, 859px\" \/><\/a><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>\u6211\u56fe\u4e2d\u53ef\u4ee5\u770b\u51fa\uff1a\u9996\u5148\u5c06\u5806\u987620\u5f39\u51fa\uff0c\u7136\u540e\u5c067\u8d4b\u7ed9\u5806\u9876\uff0c\u6b64\u65f6\u5806\u6027\u8d28\u906d\u5230\u7834\u574f\uff0c\u6700\u540e\u6211\u4eec\u6e05\u695a\u7684\u770b\u5230\u8282\u70b97\u7684\u4e0b\u6ee4\u8fc7\u7a0b\uff0c\u4ece\u644a\u8fd8\u5206\u6790\u7684\u89d2\u5ea6\u4e0a<\/p>\n\n\n\n<p>\u6765\u8bf4\uff0c\u4e0b\u6ee4\u7684\u5c42\u6570\u4e0d\u8d85\u8fc72-3\u5c42\uff0c\u6240\u4ee5\u6574\u4f53\u4e0a\u6765\u8bf4\u51fa\u961f\u7684\u65f6\u95f4\u590d\u6742\u5ea6\u4e3a\u4e00\u4e2a\u5e38\u91cfO(1)\u3002<\/p>\n\n\n\n<div class=\"cnblogs_code\">\n<pre> 1         #region \u4f18\u5148\u961f\u5217\u7684\u51fa\u961f\u64cd\u4f5c\n 2         \/\/\/ &lt;summary&gt;\n 3         \/\/\/ \u4f18\u5148\u961f\u5217\u7684\u51fa\u961f\u64cd\u4f5c\n 4         \/\/\/ &lt;\/summary&gt;\n 5         \/\/\/ &lt;returns&gt;&lt;\/returns&gt;\n 6         public HeapNode Dequeue()\n 7         {\n 8             if (nodeList.Count == 0)\n 9                 return null;\n10 \n11             \/\/\u51fa\u961f\u5217\u64cd\u4f5c\uff0c\u5f39\u51fa\u6570\u636e\u5934\u5143\u7d20\n12             var pop = nodeList[0];\n13 \n14             \/\/\u7528\u5c3e\u5143\u7d20\u586b\u5145\u5934\u5143\u7d20\n15             nodeList[0] = nodeList[nodeList.Count - 1];\n16 \n17             \/\/\u5220\u9664\u5c3e\u8282\u70b9\n18             nodeList.RemoveAt(nodeList.Count - 1);\n19 \n20             \/\/\u7136\u540e\u4ece\u6839\u8282\u70b9\u4e0b\u6ee4\u5806\n21             DownHeapAdjust(nodeList, 0);\n22 \n23             return pop;\n24         }\n25         #endregion\n26 \n27         #region  \u5bf9\u5806\u8fdb\u884c\u4e0b\u6ee4\u64cd\u4f5c\uff0c\u4f7f\u5f97\u6ee1\u8db3\u5806\u6027\u8d28\n28         \/\/\/ &lt;summary&gt;\n29         \/\/\/ \u5bf9\u5806\u8fdb\u884c\u4e0b\u6ee4\u64cd\u4f5c\uff0c\u4f7f\u5f97\u6ee1\u8db3\u5806\u6027\u8d28\n30         \/\/\/ &lt;\/summary&gt;\n31         \/\/\/ &lt;param name=\"nodeList\"&gt;&lt;\/param&gt;\n32         \/\/\/ &lt;param name=\"index\"&gt;\u975e\u53f6\u5b50\u8282\u70b9\u7684\u4e4b\u540e\u6307\u9488\uff08\u8fd9\u91cc\u8981\u6ce8\u610f\uff1a\u6211\u4eec\n33         \/\/\/ \u7684\u7b5b\u64cd\u4f5c\u65f6\u9488\u5bf9\u975e\u53f6\u8282\u70b9\u7684\uff09\n34         \/\/\/ &lt;\/param&gt;\n35         public void DownHeapAdjust(List&lt;HeapNode&gt; nodeList, int parent)\n36         {\n37             while (2 * parent + 1 &lt; nodeList.Count)\n38             {\n39                 \/\/\u5f53\u524dindex\u8282\u70b9\u7684\u5de6\u5b69\u5b50\n40                 var left = 2 * parent + 1;\n41 \n42                 \/\/\u5f53\u524dindex\u8282\u70b9\u7684\u53f3\u5b69\u5b50\n43                 var right = left + 1;\n44 \n45                 \/\/parent\u5b50\u8282\u70b9\u4e2d\u6700\u5927\u7684\u5b69\u5b50\u8282\u70b9\uff0c\u65b9\u4fbf\u4e8eparent\u8fdb\u884c\u6bd4\u8f83\n46                 \/\/\u9ed8\u8ba4\u4e3aleft\u8282\u70b9\n47                 var max = left;\n48 \n49                 \/\/\u5224\u65ad\u5f53\u524d\u8282\u70b9\u662f\u5426\u6709\u53f3\u5b69\u5b50\n50                 if (right &lt; nodeList.Count)\n51                 {\n52                     \/\/\u5224\u65adparent\u8981\u6bd4\u8f83\u7684\u6700\u5927\u5b50\u8282\u70b9\n53                     max = nodeList[left].level &lt; nodeList[right].level ? right : left;\n54                 }\n55 \n56                 \/\/\u5982\u679cparent\u8282\u70b9\u5c0f\u4e8e\u5b83\u7684\u67d0\u4e2a\u5b50\u8282\u70b9\u7684\u8bdd\uff0c\u6b64\u65f6\u7b5b\u64cd\u4f5c\n57                 if (nodeList[parent].level &lt; nodeList[max].level)\n58                 {\n59                     \/\/\u5b50\u8282\u70b9\u548c\u7236\u8282\u70b9\u8fdb\u884c\u4ea4\u6362\u64cd\u4f5c\n60                     var temp = nodeList[parent];\n61                     nodeList[parent] = nodeList[max];\n62                     nodeList[max] = temp;\n63 \n64                     \/\/\u7ee7\u7eed\u8fdb\u884c\u66f4\u4e0b\u4e00\u5c42\u7684\u8fc7\u6ee4\n65                     parent = max;\n66                 }\n67                 else\n68                 {\n69                     break;\n70                 }\n71             }\n72         }\n73         #endregion<\/pre>\n<\/div>\n\n\n\n<p>\u6700\u540e\u6211\u8fd8\u6269\u5c55\u4e86\u4e00\u4e2a\u5f39\u51fa\u5e76\u4e0b\u964d\u8282\u70b9\u4f18\u5148\u7ea7\u7684\u65b9\u6cd5\uff0c\u597d\u5427\uff0c\u8fd9\u4e2a\u65b9\u6cd5\u5927\u5bb6\u81ea\u5df1\u7422\u78e8\u7422\u78e8\uff0c\u5f88\u6709\u610f\u601d\u7684\uff0c\u5b9e\u9645\u5e94\u7528\u4e2d\u4f7f\u7528\u5230\u4e86\u3002<\/p>\n\n\n\n<div class=\"cnblogs_Highlighter sh-gutter\">\n<div>\n<div id=\"highlighter_796740\" class=\"syntaxhighlighter   csharp\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<div class=\"line number13 index12 alt2\">13<\/div>\n<div class=\"line number14 index13 alt1\">14<\/div>\n<div class=\"line number15 index14 alt2\">15<\/div>\n<div class=\"line number16 index15 alt1\">16<\/div>\n<div class=\"line number17 index16 alt2\">17<\/div>\n<div class=\"line number18 index17 alt1\">18<\/div>\n<div class=\"line number19 index18 alt2\">19<\/div>\n<div class=\"line number20 index19 alt1\">20<\/div>\n<div class=\"line number21 index20 alt2\">21<\/div>\n<div class=\"line number22 index21 alt1\">22<\/div>\n<div class=\"line number23 index22 alt2\">23<\/div>\n<div class=\"line number24 index23 alt1\">24<\/div>\n<div class=\"line number25 index24 alt2\">25<\/div>\n<div class=\"line number26 index25 alt1\">26<\/div>\n<div class=\"line number27 index26 alt2\">27<\/div>\n<div class=\"line number28 index27 alt1\">28<\/div>\n<div class=\"line number29 index28 alt2\">29<\/div>\n<div class=\"line number30 index29 alt1\">30<\/div>\n<div class=\"line number31 index30 alt2\">31<\/div>\n<div class=\"line number32 index31 alt1\">32<\/div>\n<div class=\"line number33 index32 alt2\">33<\/div>\n<div class=\"line number34 index33 alt1\">34<\/div>\n<div class=\"line number35 index34 alt2\">35<\/div>\n<div class=\"line number36 index35 alt1\">36<\/div>\n<div class=\"line number37 index36 alt2\">37<\/div>\n<div class=\"line number38 index37 alt1\">38<\/div>\n<div class=\"line number39 index38 alt2\">39<\/div>\n<div class=\"line number40 index39 alt1\">40<\/div>\n<div class=\"line number41 index40 alt2\">41<\/div>\n<div class=\"line number42 index41 alt1\">42<\/div>\n<div class=\"line number43 index42 alt2\">43<\/div>\n<div class=\"line number44 index43 alt1\">44<\/div>\n<div class=\"line number45 index44 alt2\">45<\/div>\n<div class=\"line number46 index45 alt1\">46<\/div>\n<div class=\"line number47 index46 alt2\">47<\/div>\n<div class=\"line number48 index47 alt1\">48<\/div>\n<div class=\"line number49 index48 alt2\">49<\/div>\n<div class=\"line number50 index49 alt1\">50<\/div>\n<div class=\"line number51 index50 alt2\">51<\/div>\n<div class=\"line number52 index51 alt1\">52<\/div>\n<div class=\"line number53 index52 alt2\">53<\/div>\n<div class=\"line number54 index53 alt1\">54<\/div>\n<div class=\"line number55 index54 alt2\">55<\/div>\n<div class=\"line number56 index55 alt1\">56<\/div>\n<div class=\"line number57 index56 alt2\">57<\/div>\n<div class=\"line number58 index57 alt1\">58<\/div>\n<div class=\"line number59 index58 alt2\">59<\/div>\n<div class=\"line number60 index59 alt1\">60<\/div>\n<div class=\"line number61 index60 alt2\">61<\/div>\n<div class=\"line number62 index61 alt1\">62<\/div>\n<div class=\"line number63 index62 alt2\">63<\/div>\n<div class=\"line number64 index63 alt1\">64<\/div>\n<div class=\"line number65 index64 alt2\">65<\/div>\n<div class=\"line number66 index65 alt1\">66<\/div>\n<div class=\"line number67 index66 alt2\">67<\/div>\n<div class=\"line number68 index67 alt1\">68<\/div>\n<div class=\"line number69 index68 alt2\">69<\/div>\n<div class=\"line number70 index69 alt1\">70<\/div>\n<div class=\"line number71 index70 alt2\">71<\/div>\n<div class=\"line number72 index71 alt1\">72<\/div>\n<div class=\"line number73 index72 alt2\">73<\/div>\n<div class=\"line number74 index73 alt1\">74<\/div>\n<div class=\"line number75 index74 alt2\">75<\/div>\n<div class=\"line number76 index75 alt1\">76<\/div>\n<div class=\"line number77 index76 alt2\">77<\/div>\n<div class=\"line number78 index77 alt1\">78<\/div>\n<div class=\"line number79 index78 alt2\">79<\/div>\n<div class=\"line number80 index79 alt1\">80<\/div>\n<div class=\"line number81 index80 alt2\">81<\/div>\n<div class=\"line number82 index81 alt1\">82<\/div>\n<div class=\"line number83 index82 alt2\">83<\/div>\n<div class=\"line number84 index83 alt1\">84<\/div>\n<div class=\"line number85 index84 alt2\">85<\/div>\n<div class=\"line number86 index85 alt1\">86<\/div>\n<div class=\"line number87 index86 alt2\">87<\/div>\n<div class=\"line number88 index87 alt1\">88<\/div>\n<div class=\"line number89 index88 alt2\">89<\/div>\n<div class=\"line number90 index89 alt1\">90<\/div>\n<div class=\"line number91 index90 alt2\">91<\/div>\n<div class=\"line number92 index91 alt1\">92<\/div>\n<div class=\"line number93 index92 alt2\">93<\/div>\n<div class=\"line number94 index93 alt1\">94<\/div>\n<div class=\"line number95 index94 alt2\">95<\/div>\n<div class=\"line number96 index95 alt1\">96<\/div>\n<div class=\"line number97 index96 alt2\">97<\/div>\n<div class=\"line number98 index97 alt1\">98<\/div>\n<div class=\"line number99 index98 alt2\">99<\/div>\n<div class=\"line number100 index99 alt1\">100<\/div>\n<div class=\"line number101 index100 alt2\">101<\/div>\n<div class=\"line number102 index101 alt1\">102<\/div>\n<div class=\"line number103 index102 alt2\">103<\/div>\n<div class=\"line number104 index103 alt1\">104<\/div>\n<div class=\"line number105 index104 alt2\">105<\/div>\n<div class=\"line number106 index105 alt1\">106<\/div>\n<div class=\"line number107 index106 alt2\">107<\/div>\n<div class=\"line number108 index107 alt1\">108<\/div>\n<div class=\"line number109 index108 alt2\">109<\/div>\n<div class=\"line number110 index109 alt1\">110<\/div>\n<div class=\"line number111 index110 alt2\">111<\/div>\n<div class=\"line number112 index111 alt1\">112<\/div>\n<div class=\"line number113 index112 alt2\">113<\/div>\n<div class=\"line number114 index113 alt1\">114<\/div>\n<div class=\"line number115 index114 alt2\">115<\/div>\n<div class=\"line number116 index115 alt1\">116<\/div>\n<div class=\"line number117 index116 alt2\">117<\/div>\n<div class=\"line number118 index117 alt1\">118<\/div>\n<div class=\"line number119 index118 alt2\">119<\/div>\n<div class=\"line number120 index119 alt1\">120<\/div>\n<div class=\"line number121 index120 alt2\">121<\/div>\n<div class=\"line number122 index121 alt1\">122<\/div>\n<div class=\"line number123 index122 alt2\">123<\/div>\n<div class=\"line number124 index123 alt1\">124<\/div>\n<div class=\"line number125 index124 alt2\">125<\/div>\n<div class=\"line number126 index125 alt1\">126<\/div>\n<div class=\"line number127 index126 alt2\">127<\/div>\n<div class=\"line number128 index127 alt1\">128<\/div>\n<div class=\"line number129 index128 alt2\">129<\/div>\n<div class=\"line number130 index129 alt1\">130<\/div>\n<div class=\"line number131 index130 alt2\">131<\/div>\n<div class=\"line number132 index131 alt1\">132<\/div>\n<div class=\"line number133 index132 alt2\">133<\/div>\n<div class=\"line number134 index133 alt1\">134<\/div>\n<div class=\"line number135 index134 alt2\">135<\/div>\n<div class=\"line number136 index135 alt1\">136<\/div>\n<div class=\"line number137 index136 alt2\">137<\/div>\n<div class=\"line number138 index137 alt1\">138<\/div>\n<div class=\"line number139 index138 alt2\">139<\/div>\n<div class=\"line number140 index139 alt1\">140<\/div>\n<div class=\"line number141 index140 alt2\">141<\/div>\n<div class=\"line number142 index141 alt1\">142<\/div>\n<div class=\"line number143 index142 alt2\">143<\/div>\n<div class=\"line number144 index143 alt1\">144<\/div>\n<div class=\"line number145 index144 alt2\">145<\/div>\n<div class=\"line number146 index145 alt1\">146<\/div>\n<div class=\"line number147 index146 alt2\">147<\/div>\n<div class=\"line number148 index147 alt1\">148<\/div>\n<div class=\"line number149 index148 alt2\">149<\/div>\n<div class=\"line number150 index149 alt1\">150<\/div>\n<div class=\"line number151 index150 alt2\">151<\/div>\n<div class=\"line number152 index151 alt1\">152<\/div>\n<div class=\"line number153 index152 alt2\">153<\/div>\n<div class=\"line number154 index153 alt1\">154<\/div>\n<div class=\"line number155 index154 alt2\">155<\/div>\n<div class=\"line number156 index155 alt1\">156<\/div>\n<div class=\"line number157 index156 alt2\">157<\/div>\n<div class=\"line number158 index157 alt1\">158<\/div>\n<div class=\"line number159 index158 alt2\">159<\/div>\n<div class=\"line number160 index159 alt1\">160<\/div>\n<div class=\"line number161 index160 alt2\">161<\/div>\n<div class=\"line number162 index161 alt1\">162<\/div>\n<div class=\"line number163 index162 alt2\">163<\/div>\n<div class=\"line number164 index163 alt1\">164<\/div>\n<div class=\"line number165 index164 alt2\">165<\/div>\n<div class=\"line number166 index165 alt1\">166<\/div>\n<div class=\"line number167 index166 alt2\">167<\/div>\n<div class=\"line number168 index167 alt1\">168<\/div>\n<div class=\"line number169 index168 alt2\">169<\/div>\n<div class=\"line number170 index169 alt1\">170<\/div>\n<div class=\"line number171 index170 alt2\">171<\/div>\n<div class=\"line number172 index171 alt1\">172<\/div>\n<div class=\"line number173 index172 alt2\">173<\/div>\n<div class=\"line number174 index173 alt1\">174<\/div>\n<div class=\"line number175 index174 alt2\">175<\/div>\n<div class=\"line number176 index175 alt1\">176<\/div>\n<div class=\"line number177 index176 alt2\">177<\/div>\n<div class=\"line number178 index177 alt1\">178<\/div>\n<div class=\"line number179 index178 alt2\">179<\/div>\n<div class=\"line number180 index179 alt1\">180<\/div>\n<div class=\"line number181 index180 alt2\">181<\/div>\n<div class=\"line number182 index181 alt1\">182<\/div>\n<div class=\"line number183 index182 alt2\">183<\/div>\n<div class=\"line number184 index183 alt1\">184<\/div>\n<div class=\"line number185 index184 alt2\">185<\/div>\n<div class=\"line number186 index185 alt1\">186<\/div>\n<div class=\"line number187 index186 alt2\">187<\/div>\n<div class=\"line number188 index187 alt1\">188<\/div>\n<div class=\"line number189 index188 alt2\">189<\/div>\n<div class=\"line number190 index189 alt1\">190<\/div>\n<div class=\"line number191 index190 alt2\">191<\/div>\n<div class=\"line number192 index191 alt1\">192<\/div>\n<div class=\"line number193 index192 alt2\">193<\/div>\n<div class=\"line number194 index193 alt1\">194<\/div>\n<div class=\"line number195 index194 alt2\">195<\/div>\n<div class=\"line number196 index195 alt1\">196<\/div>\n<div class=\"line number197 index196 alt2\">197<\/div>\n<div class=\"line number198 index197 alt1\">198<\/div>\n<div class=\"line number199 index198 alt2\">199<\/div>\n<div class=\"line number200 index199 alt1\">200<\/div>\n<div class=\"line number201 index200 alt2\">201<\/div>\n<div class=\"line number202 index201 alt1\">202<\/div>\n<div class=\"line number203 index202 alt2\">203<\/div>\n<div class=\"line number204 index203 alt1\">204<\/div>\n<div class=\"line number205 index204 alt2\">205<\/div>\n<div class=\"line number206 index205 alt1\">206<\/div>\n<div class=\"line number207 index206 alt2\">207<\/div>\n<div class=\"line number208 index207 alt1\">208<\/div>\n<div class=\"line number209 index208 alt2\">209<\/div>\n<div class=\"line number210 index209 alt1\">210<\/div>\n<div class=\"line number211 index210 alt2\">211<\/div>\n<div class=\"line number212 index211 alt1\">212<\/div>\n<div class=\"line number213 index212 alt2\">213<\/div>\n<div class=\"line number214 index213 alt1\">214<\/div>\n<div class=\"line number215 index214 alt2\">215<\/div>\n<div class=\"line number216 index215 alt1\">216<\/div>\n<div class=\"line number217 index216 alt2\">217<\/div>\n<div class=\"line number218 index217 alt1\">218<\/div>\n<div class=\"line number219 index218 alt2\">219<\/div>\n<div class=\"line number220 index219 alt1\">220<\/div>\n<div class=\"line number221 index220 alt2\">221<\/div>\n<div class=\"line number222 index221 alt1\">222<\/div>\n<div class=\"line number223 index222 alt2\">223<\/div>\n<div class=\"line number224 index223 alt1\">224<\/div>\n<div class=\"line number225 index224 alt2\">225<\/div>\n<div class=\"line number226 index225 alt1\">226<\/div>\n<div class=\"line number227 index226 alt2\">227<\/div>\n<div class=\"line number228 index227 alt1\">228<\/div>\n<div class=\"line number229 index228 alt2\">229<\/div>\n<div class=\"line number230 index229 alt1\">230<\/div>\n<div class=\"line number231 index230 alt2\">231<\/div>\n<div class=\"line number232 index231 alt1\">232<\/div>\n<div class=\"line number233 index232 alt2\">233<\/div>\n<div class=\"line number234 index233 alt1\">234<\/div>\n<div class=\"line number235 index234 alt2\">235<\/div>\n<div class=\"line number236 index235 alt1\">236<\/div>\n<div class=\"line number237 index236 alt2\">237<\/div>\n<div class=\"line number238 index237 alt1\">238<\/div>\n<div class=\"line number239 index238 alt2\">239<\/div>\n<div class=\"line number240 index239 alt1\">240<\/div>\n<div class=\"line number241 index240 alt2\">241<\/div>\n<div class=\"line number242 index241 alt1\">242<\/div>\n<div class=\"line number243 index242 alt2\">243<\/div>\n<div class=\"line number244 index243 alt1\">244<\/div>\n<div class=\"line number245 index244 alt2\">245<\/div>\n<div class=\"line number246 index245 alt1\">246<\/div>\n<div class=\"line number247 index246 alt2\">247<\/div>\n<div class=\"line number248 index247 alt1\">248<\/div>\n<div class=\"line number249 index248 alt2\">249<\/div>\n<div class=\"line number250 index249 alt1\">250<\/div>\n<div class=\"line number251 index250 alt2\">251<\/div>\n<div class=\"line number252 index251 alt1\">252<\/div>\n<div class=\"line number253 index252 alt2\">253<\/div>\n<div class=\"line number254 index253 alt1\">254<\/div>\n<div class=\"line number255 index254 alt2\">255<\/div>\n<div class=\"line number256 index255 alt1\">256<\/div>\n<div class=\"line number257 index256 alt2\">257<\/div>\n<div class=\"line number258 index257 alt1\">258<\/div>\n<div class=\"line number259 index258 alt2\">259<\/div>\n<div class=\"line number260 index259 alt1\">260<\/div>\n<div class=\"line number261 index260 alt2\">261<\/div>\n<div class=\"line number262 index261 alt1\">262<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"csharp keyword\">using<\/code> <code class=\"csharp plain\">System;<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"csharp keyword\">using<\/code> <code class=\"csharp plain\">System.Collections.Generic;<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"csharp keyword\">using<\/code> <code class=\"csharp plain\">System.Linq;<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"csharp keyword\">using<\/code> <code class=\"csharp plain\">System.Text;<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"csharp keyword\">using<\/code> <code class=\"csharp plain\">System.Diagnostics;<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><code class=\"csharp keyword\">using<\/code> <code class=\"csharp plain\">System.Threading;<\/code><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"csharp keyword\">using<\/code> <code class=\"csharp plain\">System.IO;<\/code><\/div>\n<div class=\"line number8 index7 alt1\">&nbsp;<\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"csharp keyword\">namespace<\/code> <code class=\"csharp plain\">ConsoleApplication2<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp keyword\">class<\/code> <code class=\"csharp plain\">Program<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number13 index12 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp keyword\">static<\/code> <code class=\"csharp keyword\">void<\/code> <code class=\"csharp plain\">Main()<\/code><\/div>\n<div class=\"line number14 index13 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number15 index14 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">PriorityQueue&lt;Url&gt; heap = <\/code><code class=\"csharp keyword\">new<\/code> <code class=\"csharp plain\">PriorityQueue&lt;Url&gt;();<\/code><\/div>\n<div class=\"line number16 index15 alt1\">&nbsp;<\/div>\n<div class=\"line number17 index16 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u968f\u673a\u63d2\u516520\u4e2a\u8282\u70b9<\/code><\/div>\n<div class=\"line number18 index17 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">for<\/code> <code class=\"csharp plain\">(<\/code><code class=\"csharp keyword\">int<\/code> <code class=\"csharp plain\">i = 1; i &lt; 20; i++)<\/code><\/div>\n<div class=\"line number19 index18 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number20 index19 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">var<\/code> <code class=\"csharp plain\">rand = <\/code><code class=\"csharp keyword\">new<\/code> <code class=\"csharp plain\">Random().Next(1, 20);<\/code><\/div>\n<div class=\"line number21 index20 alt2\">&nbsp;<\/div>\n<div class=\"line number22 index21 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">Thread.Sleep(10);<\/code><\/div>\n<div class=\"line number23 index22 alt2\">&nbsp;<\/div>\n<div class=\"line number24 index23 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">heap.Eequeue(<\/code><code class=\"csharp keyword\">new<\/code> <code class=\"csharp plain\">Url() { Data = <\/code><code class=\"csharp string\">\"test\"<\/code> <code class=\"csharp plain\">+ i }, i);<\/code><\/div>\n<div class=\"line number25 index24 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number26 index25 alt1\">&nbsp;<\/div>\n<div class=\"line number27 index26 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">while<\/code> <code class=\"csharp plain\">(<\/code><code class=\"csharp keyword\">true<\/code><code class=\"csharp plain\">)<\/code><\/div>\n<div class=\"line number28 index27 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number29 index28 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">var<\/code> <code class=\"csharp plain\">node = heap.Dequeue();<\/code><\/div>\n<div class=\"line number30 index29 alt1\">&nbsp;<\/div>\n<div class=\"line number31 index30 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">if<\/code> <code class=\"csharp plain\">(node == <\/code><code class=\"csharp keyword\">null<\/code><code class=\"csharp plain\">)<\/code><\/div>\n<div class=\"line number32 index31 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">break<\/code><code class=\"csharp plain\">;<\/code><\/div>\n<div class=\"line number33 index32 alt2\">&nbsp;<\/div>\n<div class=\"line number34 index33 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">Console.WriteLine(<\/code><code class=\"csharp string\">\"\u5f53\u524durl\u7684\u4f18\u5148\u7ea7\u4e3a:{0},\u6570\u636e\u4e3a:{1}\"<\/code><code class=\"csharp plain\">, node.level, node.t.Data);<\/code><\/div>\n<div class=\"line number35 index34 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number36 index35 alt1\">&nbsp;<\/div>\n<div class=\"line number37 index36 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">Console.Read();<\/code><\/div>\n<div class=\"line number38 index37 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number39 index38 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number40 index39 alt1\">&nbsp;<\/div>\n<div class=\"line number41 index40 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#region \u5b9a\u4e49\u4e00\u4e2a\u5b9e\u4f53<\/code><\/div>\n<div class=\"line number42 index41 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;summary&gt;<\/code><\/div>\n<div class=\"line number43 index42 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ \u5b9a\u4e49\u4e00\u4e2a\u5b9e\u4f53<\/code><\/div>\n<div class=\"line number44 index43 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;\/summary&gt;<\/code><\/div>\n<div class=\"line number45 index44 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp keyword\">class<\/code> <code class=\"csharp plain\">Url<\/code><\/div>\n<div class=\"line number46 index45 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number47 index46 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp keyword\">string<\/code> <code class=\"csharp plain\">Data { <\/code><code class=\"csharp keyword\">get<\/code><code class=\"csharp plain\">; <\/code><code class=\"csharp keyword\">set<\/code><code class=\"csharp plain\">; }<\/code><\/div>\n<div class=\"line number48 index47 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number49 index48 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#endregion<\/code><\/div>\n<div class=\"line number50 index49 alt1\">&nbsp;<\/div>\n<div class=\"line number51 index50 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp keyword\">class<\/code> <code class=\"csharp plain\">PriorityQueue&lt;T&gt; <\/code><code class=\"csharp keyword\">where<\/code> <code class=\"csharp plain\">T : <\/code><code class=\"csharp keyword\">class<\/code><\/div>\n<div class=\"line number52 index51 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number53 index52 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;summary&gt;<\/code><\/div>\n<div class=\"line number54 index53 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ \u5b9a\u4e49\u4e00\u4e2a\u6570\u7ec4\u6765\u5b58\u653e\u8282\u70b9<\/code><\/div>\n<div class=\"line number55 index54 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;\/summary&gt;<\/code><\/div>\n<div class=\"line number56 index55 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">private<\/code> <code class=\"csharp plain\">List&lt;HeapNode&gt; nodeList = <\/code><code class=\"csharp keyword\">new<\/code> <code class=\"csharp plain\">List&lt;HeapNode&gt;();<\/code><\/div>\n<div class=\"line number57 index56 alt2\">&nbsp;<\/div>\n<div class=\"line number58 index57 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#region \u5806\u8282\u70b9\u5b9a\u4e49<\/code><\/div>\n<div class=\"line number59 index58 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;summary&gt;<\/code><\/div>\n<div class=\"line number60 index59 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ \u5806\u8282\u70b9\u5b9a\u4e49<\/code><\/div>\n<div class=\"line number61 index60 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;\/summary&gt;<\/code><\/div>\n<div class=\"line number62 index61 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp keyword\">class<\/code> <code class=\"csharp plain\">HeapNode<\/code><\/div>\n<div class=\"line number63 index62 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number64 index63 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;summary&gt;<\/code><\/div>\n<div class=\"line number65 index64 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ \u5b9e\u4f53\u6570\u636e<\/code><\/div>\n<div class=\"line number66 index65 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;\/summary&gt;<\/code><\/div>\n<div class=\"line number67 index66 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp plain\">T t { <\/code><code class=\"csharp keyword\">get<\/code><code class=\"csharp plain\">; <\/code><code class=\"csharp keyword\">set<\/code><code class=\"csharp plain\">; }<\/code><\/div>\n<div class=\"line number68 index67 alt1\">&nbsp;<\/div>\n<div class=\"line number69 index68 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;summary&gt;<\/code><\/div>\n<div class=\"line number70 index69 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ \u4f18\u5148\u7ea7\u522b 1-10\u4e2a\u7ea7\u522b (\u4f18\u5148\u7ea7\u522b\u9012\u589e)<\/code><\/div>\n<div class=\"line number71 index70 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;\/summary&gt;<\/code><\/div>\n<div class=\"line number72 index71 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp keyword\">int<\/code> <code class=\"csharp plain\">level { <\/code><code class=\"csharp keyword\">get<\/code><code class=\"csharp plain\">; <\/code><code class=\"csharp keyword\">set<\/code><code class=\"csharp plain\">; }<\/code><\/div>\n<div class=\"line number73 index72 alt2\">&nbsp;<\/div>\n<div class=\"line number74 index73 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp plain\">HeapNode(T t, <\/code><code class=\"csharp keyword\">int<\/code> <code class=\"csharp plain\">level)<\/code><\/div>\n<div class=\"line number75 index74 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number76 index75 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">this<\/code><code class=\"csharp plain\">.t = t;<\/code><\/div>\n<div class=\"line number77 index76 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">this<\/code><code class=\"csharp plain\">.level = level;<\/code><\/div>\n<div class=\"line number78 index77 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number79 index78 alt2\">&nbsp;<\/div>\n<div class=\"line number80 index79 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp plain\">HeapNode() { }<\/code><\/div>\n<div class=\"line number81 index80 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number82 index81 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#endregion<\/code><\/div>\n<div class=\"line number83 index82 alt2\">&nbsp;<\/div>\n<div class=\"line number84 index83 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#region&nbsp; \u6dfb\u52a0\u64cd\u4f5c<\/code><\/div>\n<div class=\"line number85 index84 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;summary&gt;<\/code><\/div>\n<div class=\"line number86 index85 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ \u6dfb\u52a0\u64cd\u4f5c<\/code><\/div>\n<div class=\"line number87 index86 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;\/summary&gt;<\/code><\/div>\n<div class=\"line number88 index87 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp keyword\">void<\/code> <code class=\"csharp plain\">Eequeue(T t, <\/code><code class=\"csharp keyword\">int<\/code> <code class=\"csharp plain\">level = 1)<\/code><\/div>\n<div class=\"line number89 index88 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number90 index89 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5c06\u5f53\u524d\u8282\u70b9\u8ffd\u52a0\u5230\u5806\u5c3e<\/code><\/div>\n<div class=\"line number91 index90 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">nodeList.Add(<\/code><code class=\"csharp keyword\">new<\/code> <code class=\"csharp plain\">HeapNode(t, level));<\/code><\/div>\n<div class=\"line number92 index91 alt1\">&nbsp;<\/div>\n<div class=\"line number93 index92 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5982\u679c\u53ea\u6709\u4e00\u4e2a\u8282\u70b9\uff0c\u5219\u4e0d\u9700\u8981\u8fdb\u884c\u7b5b\u64cd\u4f5c<\/code><\/div>\n<div class=\"line number94 index93 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">if<\/code> <code class=\"csharp plain\">(nodeList.Count == 1)<\/code><\/div>\n<div class=\"line number95 index94 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">return<\/code><code class=\"csharp plain\">;<\/code><\/div>\n<div class=\"line number96 index95 alt1\">&nbsp;<\/div>\n<div class=\"line number97 index96 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u83b7\u53d6\u6700\u540e\u4e00\u4e2a\u975e\u53f6\u5b50\u8282\u70b9<\/code><\/div>\n<div class=\"line number98 index97 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">int<\/code> <code class=\"csharp plain\">parent = nodeList.Count \/ 2 - 1;<\/code><\/div>\n<div class=\"line number99 index98 alt2\">&nbsp;<\/div>\n<div class=\"line number100 index99 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5806\u8c03\u6574<\/code><\/div>\n<div class=\"line number101 index100 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">UpHeapAdjust(nodeList, parent);<\/code><\/div>\n<div class=\"line number102 index101 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number103 index102 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#endregion<\/code><\/div>\n<div class=\"line number104 index103 alt1\">&nbsp;<\/div>\n<div class=\"line number105 index104 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#region \u5bf9\u5806\u8fdb\u884c\u4e0a\u6ee4\u64cd\u4f5c\uff0c\u4f7f\u5f97\u6ee1\u8db3\u5806\u6027\u8d28<\/code><\/div>\n<div class=\"line number106 index105 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;summary&gt;<\/code><\/div>\n<div class=\"line number107 index106 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ \u5bf9\u5806\u8fdb\u884c\u4e0a\u6ee4\u64cd\u4f5c\uff0c\u4f7f\u5f97\u6ee1\u8db3\u5806\u6027\u8d28<\/code><\/div>\n<div class=\"line number108 index107 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;\/summary&gt;<\/code><\/div>\n<div class=\"line number109 index108 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;param name=\"nodeList\"&gt;&lt;\/param&gt;<\/code><\/div>\n<div class=\"line number110 index109 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;param name=\"index\"&gt;\u975e\u53f6\u5b50\u8282\u70b9\u7684\u4e4b\u540e\u6307\u9488\uff08\u8fd9\u91cc\u8981\u6ce8\u610f\uff1a\u6211\u4eec<\/code><\/div>\n<div class=\"line number111 index110 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ \u7684\u7b5b\u64cd\u4f5c\u65f6\u9488\u5bf9\u975e\u53f6\u8282\u70b9\u7684\uff09<\/code><\/div>\n<div class=\"line number112 index111 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;\/param&gt;<\/code><\/div>\n<div class=\"line number113 index112 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp keyword\">void<\/code> <code class=\"csharp plain\">UpHeapAdjust(List&lt;HeapNode&gt; nodeList, <\/code><code class=\"csharp keyword\">int<\/code> <code class=\"csharp plain\">parent)<\/code><\/div>\n<div class=\"line number114 index113 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number115 index114 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">while<\/code> <code class=\"csharp plain\">(parent &gt;= 0)<\/code><\/div>\n<div class=\"line number116 index115 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number117 index116 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5f53\u524dindex\u8282\u70b9\u7684\u5de6\u5b69\u5b50<\/code><\/div>\n<div class=\"line number118 index117 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">var<\/code> <code class=\"csharp plain\">left = 2 * parent + 1;<\/code><\/div>\n<div class=\"line number119 index118 alt2\">&nbsp;<\/div>\n<div class=\"line number120 index119 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5f53\u524dindex\u8282\u70b9\u7684\u53f3\u5b69\u5b50<\/code><\/div>\n<div class=\"line number121 index120 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">var<\/code> <code class=\"csharp plain\">right = left + 1;<\/code><\/div>\n<div class=\"line number122 index121 alt1\">&nbsp;<\/div>\n<div class=\"line number123 index122 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/parent\u5b50\u8282\u70b9\u4e2d\u6700\u5927\u7684\u5b69\u5b50\u8282\u70b9\uff0c\u65b9\u4fbf\u4e8eparent\u8fdb\u884c\u6bd4\u8f83<\/code><\/div>\n<div class=\"line number124 index123 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u9ed8\u8ba4\u4e3aleft\u8282\u70b9<\/code><\/div>\n<div class=\"line number125 index124 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">var<\/code> <code class=\"csharp plain\">max = left;<\/code><\/div>\n<div class=\"line number126 index125 alt1\">&nbsp;<\/div>\n<div class=\"line number127 index126 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5224\u65ad\u5f53\u524d\u8282\u70b9\u662f\u5426\u6709\u53f3\u5b69\u5b50<\/code><\/div>\n<div class=\"line number128 index127 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">if<\/code> <code class=\"csharp plain\">(right &lt; nodeList.Count)<\/code><\/div>\n<div class=\"line number129 index128 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number130 index129 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5224\u65adparent\u8981\u6bd4\u8f83\u7684\u6700\u5927\u5b50\u8282\u70b9<\/code><\/div>\n<div class=\"line number131 index130 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">max = nodeList[left].level &lt; nodeList[right].level ? right : left;<\/code><\/div>\n<div class=\"line number132 index131 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number133 index132 alt2\">&nbsp;<\/div>\n<div class=\"line number134 index133 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5982\u679cparent\u8282\u70b9\u5c0f\u4e8e\u5b83\u7684\u67d0\u4e2a\u5b50\u8282\u70b9\u7684\u8bdd\uff0c\u6b64\u65f6\u7b5b\u64cd\u4f5c<\/code><\/div>\n<div class=\"line number135 index134 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">if<\/code> <code class=\"csharp plain\">(nodeList[parent].level &lt; nodeList[max].level)<\/code><\/div>\n<div class=\"line number136 index135 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number137 index136 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5b50\u8282\u70b9\u548c\u7236\u8282\u70b9\u8fdb\u884c\u4ea4\u6362\u64cd\u4f5c<\/code><\/div>\n<div class=\"line number138 index137 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">var<\/code> <code class=\"csharp plain\">temp = nodeList[parent];<\/code><\/div>\n<div class=\"line number139 index138 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">nodeList[parent] = nodeList[max];<\/code><\/div>\n<div class=\"line number140 index139 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">nodeList[max] = temp;<\/code><\/div>\n<div class=\"line number141 index140 alt2\">&nbsp;<\/div>\n<div class=\"line number142 index141 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u7ee7\u7eed\u8fdb\u884c\u66f4\u4e0a\u4e00\u5c42\u7684\u8fc7\u6ee4<\/code><\/div>\n<div class=\"line number143 index142 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">parent = (<\/code><code class=\"csharp keyword\">int<\/code><code class=\"csharp plain\">)Math.Ceiling(parent \/ 2d) - 1;<\/code><\/div>\n<div class=\"line number144 index143 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number145 index144 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">else<\/code><\/div>\n<div class=\"line number146 index145 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number147 index146 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">break<\/code><code class=\"csharp plain\">;<\/code><\/div>\n<div class=\"line number148 index147 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number149 index148 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number150 index149 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number151 index150 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#endregion<\/code><\/div>\n<div class=\"line number152 index151 alt1\">&nbsp;<\/div>\n<div class=\"line number153 index152 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#region \u4f18\u5148\u961f\u5217\u7684\u51fa\u961f\u64cd\u4f5c<\/code><\/div>\n<div class=\"line number154 index153 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;summary&gt;<\/code><\/div>\n<div class=\"line number155 index154 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ \u4f18\u5148\u961f\u5217\u7684\u51fa\u961f\u64cd\u4f5c<\/code><\/div>\n<div class=\"line number156 index155 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;\/summary&gt;<\/code><\/div>\n<div class=\"line number157 index156 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;returns&gt;&lt;\/returns&gt;<\/code><\/div>\n<div class=\"line number158 index157 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp plain\">HeapNode Dequeue()<\/code><\/div>\n<div class=\"line number159 index158 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number160 index159 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">if<\/code> <code class=\"csharp plain\">(nodeList.Count == 0)<\/code><\/div>\n<div class=\"line number161 index160 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">return<\/code> <code class=\"csharp keyword\">null<\/code><code class=\"csharp plain\">;<\/code><\/div>\n<div class=\"line number162 index161 alt1\">&nbsp;<\/div>\n<div class=\"line number163 index162 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u51fa\u961f\u5217\u64cd\u4f5c\uff0c\u5f39\u51fa\u6570\u636e\u5934\u5143\u7d20<\/code><\/div>\n<div class=\"line number164 index163 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">var<\/code> <code class=\"csharp plain\">pop = nodeList[0];<\/code><\/div>\n<div class=\"line number165 index164 alt2\">&nbsp;<\/div>\n<div class=\"line number166 index165 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u7528\u5c3e\u5143\u7d20\u586b\u5145\u5934\u5143\u7d20<\/code><\/div>\n<div class=\"line number167 index166 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">nodeList[0] = nodeList[nodeList.Count - 1];<\/code><\/div>\n<div class=\"line number168 index167 alt1\">&nbsp;<\/div>\n<div class=\"line number169 index168 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5220\u9664\u5c3e\u8282\u70b9<\/code><\/div>\n<div class=\"line number170 index169 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">nodeList.RemoveAt(nodeList.Count - 1);<\/code><\/div>\n<div class=\"line number171 index170 alt2\">&nbsp;<\/div>\n<div class=\"line number172 index171 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u7136\u540e\u4ece\u6839\u8282\u70b9\u4e0b\u6ee4\u5806<\/code><\/div>\n<div class=\"line number173 index172 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">DownHeapAdjust(nodeList, 0);<\/code><\/div>\n<div class=\"line number174 index173 alt1\">&nbsp;<\/div>\n<div class=\"line number175 index174 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">return<\/code> <code class=\"csharp plain\">pop;<\/code><\/div>\n<div class=\"line number176 index175 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number177 index176 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#endregion<\/code><\/div>\n<div class=\"line number178 index177 alt1\">&nbsp;<\/div>\n<div class=\"line number179 index178 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#region&nbsp; \u5bf9\u5806\u8fdb\u884c\u4e0b\u6ee4\u64cd\u4f5c\uff0c\u4f7f\u5f97\u6ee1\u8db3\u5806\u6027\u8d28<\/code><\/div>\n<div class=\"line number180 index179 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;summary&gt;<\/code><\/div>\n<div class=\"line number181 index180 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ \u5bf9\u5806\u8fdb\u884c\u4e0b\u6ee4\u64cd\u4f5c\uff0c\u4f7f\u5f97\u6ee1\u8db3\u5806\u6027\u8d28<\/code><\/div>\n<div class=\"line number182 index181 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;\/summary&gt;<\/code><\/div>\n<div class=\"line number183 index182 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;param name=\"nodeList\"&gt;&lt;\/param&gt;<\/code><\/div>\n<div class=\"line number184 index183 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;param name=\"index\"&gt;\u975e\u53f6\u5b50\u8282\u70b9\u7684\u4e4b\u540e\u6307\u9488\uff08\u8fd9\u91cc\u8981\u6ce8\u610f\uff1a\u6211\u4eec<\/code><\/div>\n<div class=\"line number185 index184 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ \u7684\u7b5b\u64cd\u4f5c\u65f6\u9488\u5bf9\u975e\u53f6\u8282\u70b9\u7684\uff09<\/code><\/div>\n<div class=\"line number186 index185 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;\/param&gt;<\/code><\/div>\n<div class=\"line number187 index186 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp keyword\">void<\/code> <code class=\"csharp plain\">DownHeapAdjust(List&lt;HeapNode&gt; nodeList, <\/code><code class=\"csharp keyword\">int<\/code> <code class=\"csharp plain\">parent)<\/code><\/div>\n<div class=\"line number188 index187 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number189 index188 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">while<\/code> <code class=\"csharp plain\">(2 * parent + 1 &lt; nodeList.Count)<\/code><\/div>\n<div class=\"line number190 index189 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number191 index190 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5f53\u524dindex\u8282\u70b9\u7684\u5de6\u5b69\u5b50<\/code><\/div>\n<div class=\"line number192 index191 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">var<\/code> <code class=\"csharp plain\">left = 2 * parent + 1;<\/code><\/div>\n<div class=\"line number193 index192 alt2\">&nbsp;<\/div>\n<div class=\"line number194 index193 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5f53\u524dindex\u8282\u70b9\u7684\u53f3\u5b69\u5b50<\/code><\/div>\n<div class=\"line number195 index194 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">var<\/code> <code class=\"csharp plain\">right = left + 1;<\/code><\/div>\n<div class=\"line number196 index195 alt1\">&nbsp;<\/div>\n<div class=\"line number197 index196 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/parent\u5b50\u8282\u70b9\u4e2d\u6700\u5927\u7684\u5b69\u5b50\u8282\u70b9\uff0c\u65b9\u4fbf\u4e8eparent\u8fdb\u884c\u6bd4\u8f83<\/code><\/div>\n<div class=\"line number198 index197 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u9ed8\u8ba4\u4e3aleft\u8282\u70b9<\/code><\/div>\n<div class=\"line number199 index198 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">var<\/code> <code class=\"csharp plain\">max = left;<\/code><\/div>\n<div class=\"line number200 index199 alt1\">&nbsp;<\/div>\n<div class=\"line number201 index200 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5224\u65ad\u5f53\u524d\u8282\u70b9\u662f\u5426\u6709\u53f3\u5b69\u5b50<\/code><\/div>\n<div class=\"line number202 index201 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">if<\/code> <code class=\"csharp plain\">(right &lt; nodeList.Count)<\/code><\/div>\n<div class=\"line number203 index202 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number204 index203 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5224\u65adparent\u8981\u6bd4\u8f83\u7684\u6700\u5927\u5b50\u8282\u70b9<\/code><\/div>\n<div class=\"line number205 index204 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">max = nodeList[left].level &lt; nodeList[right].level ? right : left;<\/code><\/div>\n<div class=\"line number206 index205 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number207 index206 alt2\">&nbsp;<\/div>\n<div class=\"line number208 index207 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5982\u679cparent\u8282\u70b9\u5c0f\u4e8e\u5b83\u7684\u67d0\u4e2a\u5b50\u8282\u70b9\u7684\u8bdd\uff0c\u6b64\u65f6\u7b5b\u64cd\u4f5c<\/code><\/div>\n<div class=\"line number209 index208 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">if<\/code> <code class=\"csharp plain\">(nodeList[parent].level &lt; nodeList[max].level)<\/code><\/div>\n<div class=\"line number210 index209 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number211 index210 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u5b50\u8282\u70b9\u548c\u7236\u8282\u70b9\u8fdb\u884c\u4ea4\u6362\u64cd\u4f5c<\/code><\/div>\n<div class=\"line number212 index211 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">var<\/code> <code class=\"csharp plain\">temp = nodeList[parent];<\/code><\/div>\n<div class=\"line number213 index212 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">nodeList[parent] = nodeList[max];<\/code><\/div>\n<div class=\"line number214 index213 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">nodeList[max] = temp;<\/code><\/div>\n<div class=\"line number215 index214 alt2\">&nbsp;<\/div>\n<div class=\"line number216 index215 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u7ee7\u7eed\u8fdb\u884c\u66f4\u4e0b\u4e00\u5c42\u7684\u8fc7\u6ee4<\/code><\/div>\n<div class=\"line number217 index216 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">parent = max;<\/code><\/div>\n<div class=\"line number218 index217 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number219 index218 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">else<\/code><\/div>\n<div class=\"line number220 index219 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number221 index220 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">break<\/code><code class=\"csharp plain\">;<\/code><\/div>\n<div class=\"line number222 index221 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number223 index222 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number224 index223 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number225 index224 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#endregion<\/code><\/div>\n<div class=\"line number226 index225 alt1\">&nbsp;<\/div>\n<div class=\"line number227 index226 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#region \u83b7\u53d6\u5143\u7d20\u5e76\u4e0b\u964d\u5230\u6307\u5b9a\u7684level\u7ea7\u522b<\/code><\/div>\n<div class=\"line number228 index227 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;summary&gt;<\/code><\/div>\n<div class=\"line number229 index228 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ \u83b7\u53d6\u5143\u7d20\u5e76\u4e0b\u964d\u5230\u6307\u5b9a\u7684level\u7ea7\u522b<\/code><\/div>\n<div class=\"line number230 index229 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;\/summary&gt;<\/code><\/div>\n<div class=\"line number231 index230 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;returns&gt;&lt;\/returns&gt;<\/code><\/div>\n<div class=\"line number232 index231 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp plain\">HeapNode GetAndDownPriority(<\/code><code class=\"csharp keyword\">int<\/code> <code class=\"csharp plain\">level)<\/code><\/div>\n<div class=\"line number233 index232 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number234 index233 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">if<\/code> <code class=\"csharp plain\">(nodeList.Count == 0)<\/code><\/div>\n<div class=\"line number235 index234 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">return<\/code> <code class=\"csharp keyword\">null<\/code><code class=\"csharp plain\">;<\/code><\/div>\n<div class=\"line number236 index235 alt1\">&nbsp;<\/div>\n<div class=\"line number237 index236 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u83b7\u53d6\u5934\u5143\u7d20<\/code><\/div>\n<div class=\"line number238 index237 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">var<\/code> <code class=\"csharp plain\">pop = nodeList[0];<\/code><\/div>\n<div class=\"line number239 index238 alt2\">&nbsp;<\/div>\n<div class=\"line number240 index239 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u8bbe\u7f6e\u6307\u5b9a\u4f18\u5148\u7ea7\uff08\u5982\u679c\u4e3a MinValue \u5219\u4e3a -- \u64cd\u4f5c\uff09<\/code><\/div>\n<div class=\"line number241 index240 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">nodeList[0].level = level == <\/code><code class=\"csharp keyword\">int<\/code><code class=\"csharp plain\">.MinValue ? --nodeList[0].level : level;<\/code><\/div>\n<div class=\"line number242 index241 alt1\">&nbsp;<\/div>\n<div class=\"line number243 index242 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u4e0b\u6ee4\u5806<\/code><\/div>\n<div class=\"line number244 index243 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">DownHeapAdjust(nodeList, 0);<\/code><\/div>\n<div class=\"line number245 index244 alt2\">&nbsp;<\/div>\n<div class=\"line number246 index245 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">return<\/code> <code class=\"csharp plain\">nodeList[0];<\/code><\/div>\n<div class=\"line number247 index246 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number248 index247 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#endregion<\/code><\/div>\n<div class=\"line number249 index248 alt2\">&nbsp;<\/div>\n<div class=\"line number250 index249 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#region \u83b7\u53d6\u5143\u7d20\u5e76\u4e0b\u964d\u4f18\u5148\u7ea7<\/code><\/div>\n<div class=\"line number251 index250 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;summary&gt;<\/code><\/div>\n<div class=\"line number252 index251 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ \u83b7\u53d6\u5143\u7d20\u5e76\u4e0b\u964d\u4f18\u5148\u7ea7<\/code><\/div>\n<div class=\"line number253 index252 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;\/summary&gt;<\/code><\/div>\n<div class=\"line number254 index253 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp color1\">\/\/\/ &lt;returns&gt;&lt;\/returns&gt;<\/code><\/div>\n<div class=\"line number255 index254 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">public<\/code> <code class=\"csharp plain\">HeapNode GetAndDownPriority()<\/code><\/div>\n<div class=\"line number256 index255 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">{<\/code><\/div>\n<div class=\"line number257 index256 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp comments\">\/\/\u4e0b\u964d\u4e00\u4e2a\u4f18\u5148\u7ea7<\/code><\/div>\n<div class=\"line number258 index257 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp keyword\">return<\/code> <code class=\"csharp plain\">GetAndDownPriority(<\/code><code class=\"csharp keyword\">int<\/code><code class=\"csharp plain\">.MinValue);<\/code><\/div>\n<div class=\"line number259 index258 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number260 index259 alt1\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp preprocessor\">#endregion<\/code><\/div>\n<div class=\"line number261 index260 alt2\"><code class=\"csharp spaces\">&nbsp;&nbsp;&nbsp;&nbsp;<\/code><code class=\"csharp plain\">}<\/code><\/div>\n<div class=\"line number262 index261 alt1\"><code class=\"csharp plain\">}<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/url.png\"><img loading=\"lazy\" decoding=\"async\" width=\"386\" height=\"342\" src=\"https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/url.png\" alt=\"\" class=\"wp-image-9073\" srcset=\"https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/url.png 386w, https:\/\/cn.hostease.com\/xueyuan\/wp-content\/uploads\/2017\/02\/url-300x266.png 300w\" sizes=\"auto, (max-width: 386px) 100vw, 386px\" \/><\/a><\/figure>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4f18\u5148\u961f\u5217\uff0c\u975e\u5806\u83ab\u5c5e\u3002 \u4e00\uff1a\u5806\u7ed3\u6784 1:\u6027\u8d28 \u5806\u662f\u4e00\u79cd\u5f88\u677e\u6563\u7684\u5e8f\u7ed3\u6784\u6811\uff0c\u53ea\u4fdd\u5b58\u4e86\u7236\u8282\u70b9\u548c\u5b69\u5b50\u8282\u70b9\u7684\u5927\u5c0f\u5173\u7cfb\uff0c\u5e76\u4e0d &#8230; <a title=\"\u7ecf\u5178\u7b97\u6cd5\u9898\u6bcf\u65e5\u6f14\u7ec3\u2014\u2014\u7b2c\u4e5d\u9898 \u4f18\u5148\u961f\u5217\" class=\"read-more\" href=\"https:\/\/cn.hostease.com\/xueyuan\/jishu\/%e7%bb%8f%e5%85%b8%e7%ae%97%e6%b3%95%e9%a2%98%e6%af%8f%e6%97%a5%e6%bc%94%e7%bb%83-%e7%ac%ac%e4%b9%9d%e9%a2%98-%e4%bc%98%e5%85%88%e9%98%9f%e5%88%97\/\" aria-label=\"\u9605\u8bfb \u7ecf\u5178\u7b97\u6cd5\u9898\u6bcf\u65e5\u6f14\u7ec3\u2014\u2014\u7b2c\u4e5d\u9898 \u4f18\u5148\u961f\u5217\">\u9605\u8bfb\u66f4\u591a<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[5],"tags":[551,552],"class_list":["post-1793","post","type-post","status-publish","format-standard","hentry","category-jishu","tag-551","tag-552"],"aioseo_notices":[],"jetpack_featured_media_url":"","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/cn.hostease.com\/xueyuan\/wp-json\/wp\/v2\/posts\/1793","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cn.hostease.com\/xueyuan\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cn.hostease.com\/xueyuan\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cn.hostease.com\/xueyuan\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cn.hostease.com\/xueyuan\/wp-json\/wp\/v2\/comments?post=1793"}],"version-history":[{"count":3,"href":"https:\/\/cn.hostease.com\/xueyuan\/wp-json\/wp\/v2\/posts\/1793\/revisions"}],"predecessor-version":[{"id":9074,"href":"https:\/\/cn.hostease.com\/xueyuan\/wp-json\/wp\/v2\/posts\/1793\/revisions\/9074"}],"wp:attachment":[{"href":"https:\/\/cn.hostease.com\/xueyuan\/wp-json\/wp\/v2\/media?parent=1793"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cn.hostease.com\/xueyuan\/wp-json\/wp\/v2\/categories?post=1793"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cn.hostease.com\/xueyuan\/wp-json\/wp\/v2\/tags?post=1793"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}