帖一些C语言的代码吧,一些基础的,较为简单的代码,没事的时候可以复习一下, 一直说这学期还是刷JudgeOnline 还是没做到啊,等节奏定下来就开始,一共三千多道题,真心爽。。。
还是先搞点简单的吧。
快排,核心思想就是每次找到一个元素的合适位置,同时保证前面的元素都小于他,后面的元素都大于他。
#include <stdio.h>
int findSeat(int l[],int low,int high)
{
int prvotkey=l[low];
int temp;
temp=l[low];
while (low<high)
{
while (low<high&&l[high]>=prvotkey)
--high;
l[low]=l[high];
while (low<high&&l[low]<=prvotkey)
++low;
l[high]=l[low];
}
l[low]=temp;
return low;
}
void qsort(int l[],int low,int high)
{
int prvotloc;
if(low<high)
{
prvotloc=findSeat(l,low,high);
qsort(l,low,prvotloc-1);
qsort(l,prvotloc+1,high);
}
}
void quicksort(int l[],int n)
{
qsort(l,1,n);
}
void main()
{
int a[200],n,i;
printf("n=");
scanf("%d",&n);
for (i=1;i<=n;i++)
scanf("%d",&a[i]);
quicksort(a,n);
printf("right number:");
for(i=1;i<=n;i++)
printf("%d ",a[i]);
printf("\n");
}
排序大概就一个快排吧,冒泡、选择就算了。接下来是些字符串处理的吧。