2023年经典笔试题

上传人:ni****g 文档编号:505003283 上传时间:2023-02-22 格式:DOC 页数:17 大小:31.50KB
返回 下载 相关 举报
2023年经典笔试题_第1页
第1页 / 共17页
2023年经典笔试题_第2页
第2页 / 共17页
2023年经典笔试题_第3页
第3页 / 共17页
2023年经典笔试题_第4页
第4页 / 共17页
2023年经典笔试题_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《2023年经典笔试题》由会员分享,可在线阅读,更多相关《2023年经典笔试题(17页珍藏版)》请在金锄头文库上搜索。

1、经典笔试题1.冒泡排序void BubbleSort(int array, int len) int i = 0; int j = 0; int exchange = 1; for(i=0; (ii; j-) if( arrayj arrayj-1 ) swap(array, j, j-1); exchange = 1; 2.插入排序void InsertionSort(int array, int len) int i = 0; int j = 0; int k = -1; int temp = -1; for(i=1; i=0) & (arrayjtemp); j-) arrayj+1 =

2、 arrayj; k = j; arrayk = temp; 3.选择排序void SelectionSort(int array, int len) int i = 0; int j = 0; int k = -1; for(i=0; ilen; i+) k = i; for(j=i; jlen; j+) if( arrayj arrayk ) k = j; swap(array, i, k); 4.字符串求长size_t strlen(const char* s) size_t length = 0; assert(s); while(*s+) length+; return length

3、;5.字符串复制char* strcpy(char* dst, const char* src) char* ret = dst; assert(dst & src); while( (*dst+ = *src+) != 0 ); return ret;6.字符串连接void strcat(char s,char t)int i,j;i=j=0;while(si != 0)i+;while(si+ = tj+) != 0);7.字符串比较int strcmp(char *source,char *dest) assert(source&dest); while(*source = *dest)

4、 & (*source) & (*dest) source+; dest+; if(*source = 0) & (*dest = 0) return 0; else return -1;8.字符串反转void reverse(char s)int c,i,j;for(i=0,j=strlen(s)-1;ij;i+,j-)c=si;si=sj;sj=c;9.字符串转数字int atoi(char s)int i,n,sign;for(i=0;isspace(si);i+);sign=(si=-)? -1:1;if(si = +|si = -)i+;for(n=0;isdigit(si);i+)

5、n=10*n+(si-0);return sign*n;10.数字转字符串void itoa(int n,char s)int i,sign;if(sign=n)0);if(sign0)si+=-;si=0;reverse(s);11.二分查找int binary_search (int a, int low, int high, int key) int ret = -1; while( low = high ) int mid = (low + high) / 2; if( amid = key ) ret = mid; break; else if( key amid ) low = m

6、id + 1; return ret;12.内存复制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;13.最长公共子串int LCS(const char *str1 , int len1 , const char *str2 , int len2 , c

7、har *&lcs) if(NULL = str1 | NULL = str2) return -1; int *c = new intlen2+1; for(int i = 0 ; i len2 ; +i) ci = 0; int max_len = 0; int pos = 0; for(int i = 0 ; i 0 ; -j) if(str1i = str2j-1) cj = cj-1 + 1; if(cj max_len) max_len = cj; pos = j-1; else cj = 0; if(0 = max_len) return 0; lcs = new charmax

8、_len; for(int i = 0 ; i max_len ; +i) lcsi = str2pos-max_len+1+i; coutpos = posendl; delete c; return max_len;14.约瑟夫问题void array_iterate(int len, int input_array, int m, int output_array)bool* flag = new boollen;memset(flag,false,len); int hasout = 0; /已经出列的数字的个数int pos = 0; /当前元素的下标int count = 0; /

9、当前已数到的未被标记的数字的个数 while(1)if(false = flagpos) /当前元素还没有出列 count+; if(count = m) /已经计数到m,input_array中pos下标的元素出列 output_arrayhasout = input_arraypos; flagpos = true; /标记input_array中pos下标的元素已经出列 hasout+; if(hasout = len)break; /所有的元素都已经出列,退出本函数 /初始化下一轮的数字 count = 0; m = input_arraypos; pos = (pos+1)%len; delete flag;15.单链表的创建struct _tag_node int data; struct _tag_node* next;typedef struct _tag_node node;node* creat(

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 幼儿/小学教育 > 幼儿教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号