{"id":44212,"date":"2023-12-11T15:02:10","date_gmt":"2023-12-11T07:02:10","guid":{"rendered":"https:\/\/wx.kaifamiao.info\/?p=44212"},"modified":"2023-12-11T15:02:10","modified_gmt":"2023-12-11T07:02:10","slug":"%e7%8e%b0%e5%9c%ba%e7%94%a8collabedit%e5%86%99%e4%bb%a3%e7%a0%81%ef%bc%8c%e4%b8%80%e4%b8%aa%e6%80%aa%e5%bc%82%e7%9a%84%e5%bd%92%e5%b9%b6%e7%ae%97%e6%b3%95%e3%80%82%e3%80%82%e3%80%82%e4%b9%8b%e5%89%8d","status":"publish","type":"post","link":"http:\/\/wx.kaifamiao.info\/index.php\/2023\/12\/11\/%e7%8e%b0%e5%9c%ba%e7%94%a8collabedit%e5%86%99%e4%bb%a3%e7%a0%81%ef%bc%8c%e4%b8%80%e4%b8%aa%e6%80%aa%e5%bc%82%e7%9a%84%e5%bd%92%e5%b9%b6%e7%ae%97%e6%b3%95%e3%80%82%e3%80%82%e3%80%82%e4%b9%8b%e5%89%8d\/","title":{"rendered":"\u73b0\u573a\u7528collabedit\u5199\u4ee3\u7801\uff0c\u4e00\u4e2a\u602a\u5f02\u7684\u5f52\u5e76\u7b97\u6cd5\u3002\u3002\u3002\u4e4b\u524d\u6ca1\u9047\u5230\u8fc7\uff0c\u76f4\u63a5\u628a\u5f52\u5e76\u5199\u51fa\u6765\uff0c\u4f46\u662f\u8bf4\u590d\u6742\u5ea6\u592a\u9ad8\uff0c\u4f18\u5316\u4e86\u4e09\u904d\u8fd8\u4e0d\u884c\uff0c\u6700\u540e\u8bf4\u51fa\u7528\u5c0f\u9876\u5806\u89e3\u51b3\u4e86\u3002\u3002\u3002"},"content":{"rendered":"<p>&#8220;`&#8221;                    \u53c2\u8003\u56de\u7b54\uff1a<\/p>\n<p>\u5f52\u5e76\u7b97\u6cd5\uff1a<\/p>\n<p>&lt;pre&gt;&lt;code&gt;#include using namespace std;<br \/>\n\/\/\u5c06\u6709\u4e8c\u4e2a\u6709\u5e8f\u6570\u5217a[first&#8230;mid]\u548ca[mid&#8230;last]\u5408\u5e76\u3002<br \/>\nvoid __merge(int a[], int first, int mid, int last, int temp[])<br \/>\n{<br \/>\nint i = first, j = mid + 1;<br \/>\nint m = mid, n = last;<br \/>\nint k = 0;<br \/>\nwhile (i &lt;= m &amp;&amp; j &lt;= n)<br \/>\n{<br \/>\n    if (a[i] &lt;= a[j])<br \/>\n        temp[k++] = a[i++];<br \/>\n    else<br \/>\n        temp[k++] = a[j++];<br \/>\n}<br \/>\nwhile (i &lt;= m)<br \/>\ntemp[k++] = a[i++];<br \/>\nwhile (j &lt;= n)<br \/>\ntemp[k++] = a[j++];<br \/>\nfor (i = 0; i &lt; k; i++)<br \/>\n    a[first + i] = temp[i];<br \/>\n}<br \/>\nvoid __merge_sort(int a[], int first, int last, int temp[])<br \/>\n{<br \/>\n    if (first &lt; last)<br \/>\n    {<br \/>\n        int mid = (first + last) \/ 2;<br \/>\n        __merge_sort(a, first, mid, temp);<br \/>\n        __merge_sort(a, mid + 1, last, temp);<br \/>\n        __merge(a, first, mid, last, temp);<br \/>\n    }<br \/>\n}<br \/>\nbool MergeSort(int a[], int n)<br \/>\n{<br \/>\n    int *p = new int[n];<br \/>\n    if (p == NULL)<br \/>\n    {<br \/>\n        return false;<br \/>\n    }<br \/>\n    else<br \/>\n    {<br \/>\n        __merge_sort(a, 0, n &#8211; 1, p);<br \/>\n        delete[] p;<br \/>\n        return true;<br \/>\n    }<br \/>\n}<br \/>\nint main()<br \/>\n{<br \/>\n    const int LEN = 10;<br \/>\n    int a[LEN] = { 23, 40, 45, 19, 12, 16, 90, 39, 87, 71 };<br \/>\n    cout&lt;&lt;&quot;&quot;Before the merge sort, the Array is:&quot;&quot;&lt;&lt;endl;<br \/>\n    for(int i = 0; i &lt; LEN; ++i)<br \/>\n    {<br \/>\n        cout&lt;&lt;a[i]&lt;&lt;&quot;&quot; &quot;&quot;;<br \/>\n    }<br \/>\n    cout&lt;&lt;endl;<br \/>\n    cout&lt;&lt;endl;<br \/>\n    MergeSort(a, LEN);<br \/>\n    cout&lt;&lt;&quot;&quot;After the merge sort, the Array is:&quot;&quot;&lt;&lt;endl;<br \/>\n    for(int i = 0; i &lt; LEN; ++i)<br \/>\n    {<br \/>\n        cout&lt;&lt;a[i]&lt;&lt;&quot;&quot; &quot;&quot;;<br \/>\n    }<br \/>\n    cout&lt;&lt;endl;<br \/>\n    system(&quot;&quot;pause&quot;&quot;);<br \/>\n    return 0;<br \/>\n}<br \/>\n&lt;\/code&gt;&lt;\/pre&gt;<\/p>\n<p>\u5c0f\u9876\u5806\uff1a<\/p>\n<p>&lt;pre&gt;&lt;code&gt;import java.util.Arrays;<br \/>\npublic class SmallHeap {<br \/>\n    public static int[] topN(int[] arr, int n) {<br \/>\n    int[] list = new int[n];<br \/>\n    System.arraycopy(arr, 0, list, 0, n);<br \/>\n    for (int i = 0; i &lt; n; i++) {<br \/>\n        int t = i; while (t != 0 &amp;&amp; list[parent(t)] &gt; list[t]) {<br \/>\n        swap(list, t, t = parent(t));<br \/>\n    }}<br \/>\n    for (int i = n, len = arr.length; i &lt; len; i++) {<br \/>\n    if (arr[i] &gt;= list[0]) {<br \/>\n    \/\/ \u7f6e\u6362\u6808\u9876<br \/>\n    list[0] = arr[i];<br \/>\n    \/\/ \u8c03\u6574\u6808\u9876<br \/>\n    int t = 0;<br \/>\n    while((left(t)&lt;n&amp;&amp;list[t]&gt;list[left(t)])||(right(t)&lt;n&amp;&amp; list[t]&gt;list[right(t)])) {<br \/>\n    if (right(t) &lt; n &amp;&amp; list[right(t)] &lt; list[left(t)]) {<br \/>\n    swap(list, t, t = right(t));<br \/>\n    } else {<br \/>\n    swap(list, t, t = left(t));<br \/>\n    }<br \/>\n    }<br \/>\n    }<br \/>\n    }<br \/>\n    return list;<br \/>\n    }<br \/>\n    private static void swap(int[] list, int i, int j) {<br \/>\n    int tmp = list[i];<br \/>\n    list[i] = list[j];<br \/>\n    list[j] = tmp;<br \/>\n    }<br \/>\n    private static int parent(int i) {<br \/>\n    return (i &#8211; 1) \/ 2;<br \/>\n    }<br \/>\n    private static int left(int i) {<br \/>\n    return 2 * i + 1;<br \/>\n    }<br \/>\n    private static int right(int i) {<br \/>\n    return 2 * i + 2;<br \/>\n    }<br \/>\n    public static void main(String[] args) {<br \/>\n        int[] arr = new int[]{56, 30, 71, 18, 29, 93, 44, 75, 20, 65, 68, 34};<br \/>\n        System.out.println(&quot;&quot;\u539f\u59cb\u6570\u7ec4: &quot;&quot;);<br \/>\n        System.out.println(Arrays.toString(arr));<br \/>\n        System.out.println(&quot;&quot;\u8c03\u6574\u540e\u6570\u7ec4: &quot;&quot;);<br \/>\n        System.out.println(Arrays.toString(SmallHeap.topN(arr, 5)));<br \/>\n    }<br \/>\n}<br \/>\n&lt;\/code&gt;&lt;\/pre&gt;<\/p>\n<p>\u00a0<\/p>\n<p>\u00a0<\/p>\n<p>&lt;pre&gt;&lt;code&gt;            &quot;&#8220;`<br \/>\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>&#8220;`&#8221; \u53c2\u8003\u56de\u7b54\uff1a \u5f52\u5e76\u7b97\u6cd5\uff1a &lt;pre&gt;&lt;code&gt;#inc [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[101],"tags":[],"class_list":["post-44212","post","type-post","status-publish","format-standard","hentry","category-c"],"_links":{"self":[{"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/posts\/44212","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/comments?post=44212"}],"version-history":[{"count":1,"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/posts\/44212\/revisions"}],"predecessor-version":[{"id":44213,"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/posts\/44212\/revisions\/44213"}],"wp:attachment":[{"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/media?parent=44212"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/categories?post=44212"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/tags?post=44212"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}