ecnu 1841 Sort
Posted taming
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ecnu 1841 Sort相关的知识,希望对你有一定的参考价值。
C/C++:
#include<bits/stdc++.h> using namespace std; const int maxN=50; int ls[maxN/2],rs[maxN/2]; void mergesort(int arr[],int l,int r){ int m=(l+r)/2; if(m>l)mergesort(arr,l,m); if(m+1<r)mergesort(arr,m+1,r); memcpy(ls,arr+l,sizeof(int)*(m-l+1)); memcpy(rs,arr+m+1,sizeof(int)*(r-m)); ls[m-l+1]=INT_MAX; rs[r-m]=INT_MAX; int u(0),v(0); for(int i=l;i<=r;i++){ if(ls[u]<rs[v])arr[i]=ls[u++]; else arr[i]=rs[v++]; } } int arr[100]; int main(){ int n; scanf("%d",&n); for(int i=0;i<n;i++)scanf("%d",arr+i); mergesort(arr,0,n-1); for(int i=0;i<n;i++)printf("%d\n",arr[i]); }
python:
def quicksort(arr,l,r): if l>=r:return m=l for i in range(l,r): if arr[i]<arr[r]: arr[i],arr[m]=arr[m],arr[i] m+=1 arr[m],arr[r]=arr[r],arr[m] if m>l+1: quicksort(arr,l,m-1) if m<r-1: quicksort(arr,m+1,r) n=int(input()) arr=[] for i in range(0,n): arr.append(int(input())) quicksort(arr,0,n-1) for i in arr: print(i)
以上是关于ecnu 1841 Sort的主要内容,如果未能解决你的问题,请参考以下文章
[原创]java WEB学习笔记61:Struts2学习之路--通用标签 property,uri,param,set,push,if-else,itertor,sort,date,a标签等(代码片段