{"id":237,"date":"2010-05-02T20:40:00","date_gmt":"2010-05-02T12:40:00","guid":{"rendered":"http:\/\/localhost\/?p=237"},"modified":"2010-05-02T20:40:00","modified_gmt":"2010-05-02T12:40:00","slug":"sort_","status":"publish","type":"post","link":"https:\/\/www.shuizilong.com\/wjmzbmr\/?p=237","title":{"rendered":"\u6392\u5e8f\u3002\u3002\u3002"},"content":{"rendered":"<p> &#160;&#160;&#160; \u6211SB\u4e86\u3002\u3002\u3002\u5404\u4f4d\u795e\u725bWS\u6211\u56e7\u3002\u3002\u3002\u3002\u6700\u8fd1\u6559\u4e00\u4e2a\u540c\u5b66\u6392\u5e8f\u4e8e\u662f\u5c31\u5199\u4e863\u4e2a\u6392\u5e8f\u7684\u57fa\u672c\u7b97\u6cd5\u3002\u3002\u6211\u53d1\u73b0\u57fa\u6570\u6392\u5e8f\u771f\u662f\u5feb\u7684\u8ddf\u9b3c\u4e00\u6837\u3002\u3002\u3002<br \/>\u5feb\u901f\u6392\u5e8f\uff1a<br \/>#include &lt;iostream&gt;<br \/>#include &lt;cstdlib&gt;<br \/>#define rep(i,n) for(int i=0;i&lt;n;i++)<br \/>const int inf=~0U&gt;&gt;1,maxn=10000000;<br \/>using namespace std;<br \/>int A[maxn];<br \/>void sort(int l,int r)<br \/>{<br \/>    if(r-l&lt;2)return;<br \/>    int h=l,x=A[l+rand()%(r-l+1)];<br \/>    for(int i=l;i&lt;=r;i++)if(A[i]&lt;x){int t=A[i];A[i]=A[h];A[h]=t;h++;}<br \/>    sort(l,h-1);sort(h+1,r);<br \/>}<br \/>int main()<br \/>{<br \/>    int n;cin&gt;&gt;n;rep(i,n)scanf(&quot;%d&quot;,A+i);sort(0,n-1);<br \/>}\u5806\u6392\u5e8f\uff1a<br \/>#include &lt;cstdio&gt;<br \/>#define rep(i,n) for(int i=0;i&lt;n;i++)<br \/>const int inf=~0U&gt;&gt;1,maxn=10000000;<br \/>using namespace std;<br \/>int n,A[maxn];<br \/>inline int swap(int&amp;a,int&amp;b){a^=b^=a^=b;}<br \/>void Up(int i)<br \/>{<br \/>    if(i\/2&amp;&amp;A[i\/2]&gt;A[i])swap(A[i],A[i\/2]),Up(i\/2);<br \/>}<br \/>void Down(int i)<br \/>{<br \/>    int p=i*2;if(p&gt;n)return;<br \/>    if(p+1&lt;=n&amp;&amp;A[p+1]&lt;A[p])++p;<br \/>    if(A[i]&gt;A[p])swap(A[i],A[p]),Down(p);<br \/>}<br \/>int main()<br \/>{<br \/>    scanf(&quot;%d&quot;,&amp;n);rep(i,n)scanf(&quot;%d&quot;,A+i+1),Up(i+1);<br \/>    rep(i,n)swap(A[1],A[n&#8211;]),Down(1);<br \/>}\u57fa\u6570\u6392\u5e8f\uff08\u6bcf4\u4f4d\uff09\uff1a<br \/>#include &lt;algorithm&gt;<br \/>#include &lt;cstdio&gt;<br \/>#define rep(i,n) for(int i=0;i&lt;n;i++)<br \/>const int inf=~0U&gt;&gt;2,maxn=1000000;<br \/>using namespace std;<br \/>int S0[maxn],S1[maxn],n,C[16]={};<br \/>int*A=S0,*B=S1;<br \/>int main()<br \/>{<br \/>    scanf(&quot;%d&quot;,&amp;n);rep(i,n)scanf(&quot;%d&quot;,A+i);<br \/>    rep(x,4)<br \/>    {<br \/>        int d=x*4;rep(i,16)C[i]=0;<br \/>        rep(i,n)C[(A[i]&gt;&gt;d)&amp;15]++;rep(i,16)if(i)C[i]+=C[i-1];<br \/>        for(int i=n-1;i&gt;=0;i&#8211;)B[&#8211;C[(A[i]&gt;&gt;d)&amp;15]]=A[i];<br \/>        swap(A,B);<br \/>    }<br \/>}\u65e0\u8bba\u4ece\u4ee3\u7801\u957f\u5ea6\u8fd8\u662f\u901f\u5ea6\u6765\u8bf4\u3002\u3002\u90fd\u662f\u57fa\u6570\u6392\u5e8f\u5f3a\u3002\u3002\u56e7\u554a\u3002\u3002 <\/p>\n","protected":false},"excerpt":{"rendered":"<p>&#160;&#160;&#160; \u6211SB\u4e86\u3002\u3002\u3002\u5404\u4f4d\u795e\u725bWS\u6211\u56e7\u3002\u3002\u3002\u3002\u6700\u8fd1\u6559\u4e00\u4e2a\u540c\u5b66\u6392\u5e8f\u4e8e\u662f\u5c31\u5199\u4e863\u4e2a\u6392\u5e8f\u7684\u57fa\u672c\u7b97\u6cd5\u3002\u3002\u6211\u53d1\u73b0\u57fa\u6570\u6392\u5e8f\u771f\u662f\u5feb\u7684\u8ddf\u9b3c\u4e00\u6837\u3002\u3002\u3002\u5feb\u901f\u6392\u5e8f\uff1a#include &lt;iostream&gt;#include &lt;cstdlib&gt;#define rep(i,n) for(int i=0;i&lt;n;i++)const int inf=~0U&gt;&gt;1,maxn=10000000;using namespace std;int A[maxn];void sort(int l,int r){ if(r-l&lt;2)return; int h=l,x=A[l+rand()%(r-l+1)]; for(int i=l;i&lt;=r;i++)if(A[i]&lt;x){int t=A[i];A[i]=A[h];A[h]=t;h++;} sort(l,h-1);sort(h+1,r);}int main(){ int n;cin&gt;&gt;n;rep(i,n)scanf(&quot;%d&quot;,A+i);sort(0,n-1);}\u5806\u6392\u5e8f\uff1a#include &lt;cstdio&gt;#define rep(i,n) for(int i=0;i&lt;n;i++)const int inf=~0U&gt;&gt;1,maxn=10000000;using namespace std;int n,A[maxn];inline int swap(int&amp;a,int&amp;b){a^=b^=a^=b;}void Up(int i){ if(i\/2&amp;&amp;A[i\/2]&gt;A[i])swap(A[i],A[i\/2]),Up(i\/2);}void Down(int i){ int p=i*2;if(p&gt;n)return; if(p+1&lt;=n&amp;&amp;A[p+1]&lt;A[p])++p; if(A[i]&gt;A[p])swap(A[i],A[p]),Down(p);}int main(){ scanf(&quot;%d&quot;,&amp;n);rep(i,n)scanf(&quot;%d&quot;,A+i+1),Up(i+1); rep(i,n)swap(A[1],A[n&#8211;]),Down(1);}\u57fa\u6570\u6392\u5e8f\uff08\u6bcf4\u4f4d\uff09\uff1a#include &lt;algorithm&gt;#include &lt;cstdio&gt;#define rep(i,n) for(int i=0;i&lt;n;i++)const int inf=~0U&gt;&gt;2,maxn=1000000;using [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[10],"tags":[],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=\/wp\/v2\/posts\/237"}],"collection":[{"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=237"}],"version-history":[{"count":0,"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=\/wp\/v2\/posts\/237\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=237"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=237"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=237"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}