文档介绍:该【经典笔试题 】是由【胜利的果实】上传分享,文档一共【18】页,该文档可以免费在线阅读,需要了解更多关于【经典笔试题 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。经典笔试题
资料仅供参考
经典笔试题
void BubbleSort(int array[], int len)
{
int i = 0;
int j = 0;
int exchange = 1;
for(i=0; (i<len) && exchange; i++)
{
exchange = 0;
for(j=len-1; j>i; j--)
{
if( array[j] < array[j-1] )
{
swap(array, j, j-1);
exchange = 1;
}
}
}
}
void InsertionSort(int array[], int len)
资料仅供参考
{
int i = 0;
int j = 0;
int k = -1;
int temp = -1;
for(i=1; i<len; i++)
{
k = i;
temp = array[k];
for(j=i-1; (j>=0) && (array[j]>temp); j--)
{
array[j+1] = array[j];
k = j;
}
array[k] = temp;
}
}
资料仅供参考
void SelectionSort(int array[], int len)
{
int i = 0;
int j = 0;
int k = -1;
for(i=0; i<len; i++)
{
k = i;
for(j=i; j<len; j++)
{
if( array[j] < array[k] )
{
k = j;
}
}
swap(array, i, k);
}
}
size_t strlen(const char* s)
{
资料仅供参考
size_t length = 0;
assert(s);
while(*s++)
{
length++;
}
return length;
}
char* strcpy(char* dst, const char* src)
{
char* ret = dst;
assert(dst && src);
while( (*dst++ = *src++) != '\0' );
return ret;
}
void strcat(char s[],char t[])
{
int i,j;
i=j=0;
资料仅供参考
while(s[i] != ’\0’)
i++;
while((s[i++] = t[j++]) != ’\0’)
;
}
int strcmp(char *source,char *dest)
{
assert(source&&dest);
while((*source == *dest) && (*source) && (*dest))
{
source++;
dest++;
}
if((*source == '\0') && (*dest == '\0'))
return 0;
else
return -1;
}
资料仅供参考
void reverse(char s[])
{
int c,i,j;
for(i=0,j=strlen(s)-1;i<j;i++,j--){
c=s[i];
s[i]=s[j];
s[j]=c;
}
}
int atoi(char s[])
{
int i,n,sign;
for(i=0;isspace(s[i]);i++)
;
sign=(s[i]==’-’)? -1:1;
if(s[i] == ’+’||s[i] == ’-’)
i++;
for(n=0;isdigit(s[i]);i++)
n=10*n+(s[i]-’0’);
return sign*n;
}
资料仅供参考
void itoa(int n,char s[])
{
int i,sign;
if((sign=n)<0)
n=-n;
i=0;
do{
s[i++]=n%10+’0’;
}while((n/=10)>0);
if(sign<0)
s[i++]=’-’;
s[i]=’\0’;
reverse(s);
}
int binary_search (int a[], int low, int high, int key)
{
int ret = -1;
while( low <= high )
{
资料仅供参考
int mid = (low + high) / 2;
if( a[mid] == key )
{
ret = mid;
break;
}
else if( key < a[mid] )
{
high = mid - 1;
}
else if( key > a[mid] )
{
low = mid + 1;
}
}
return ret;
}
资料仅供参考
void *memcpy(void *dest, const void *src, size_t count)
{
assert(dest != NULL && src != NULL);
char *tmp = (char *)dest;
const char *s = (const char *)src;
while ((count--)>0)
*tmp++ = *s++ ;
return dest;
}
int LCS(const char *str1 , int len1 , const char *str2 , int len2 , char *&lcs)
{
if(NULL == str1 || NULL == str2)
{
return -1;
}
int *c = new int[len2+1];
for(int i = 0 ; i < len2 ; ++i)
{