第八十九题(链表逆序,atoi函数,快速排序)
2014-07-05 15:48
246 查看
89.神州数码、华为、东软笔试题
1.2005 年11 月15 日华为软件研发笔试题。实现一单链表的逆转。
2.编码实现字符串转整型的函数(实现函数atoi 的功能),据说是神州数码笔试题。如将字符串”+123”123, ”-0123”-123, “123CS45”123, “123.45CS”123, “CS123.45”0
3.快速排序
分析和代码:
1.链表逆序,从链表中的第二个节点开始,依次将节点插入到头结点后面,完成逆序。
3.经典排序算法
1.2005 年11 月15 日华为软件研发笔试题。实现一单链表的逆转。
2.编码实现字符串转整型的函数(实现函数atoi 的功能),据说是神州数码笔试题。如将字符串”+123”123, ”-0123”-123, “123CS45”123, “123.45CS”123, “CS123.45”0
3.快速排序
分析和代码:
1.链表逆序,从链表中的第二个节点开始,依次将节点插入到头结点后面,完成逆序。
void reverseList(node* head) { if (head == NULL || head->next == NULL) return; //无效的head节点或者空链表 node* pPrevious = head->next; node* pCurrent=pPrevious->next; while (pCurrent != NULL) //从链表中的第二个节点开始,依次将节点插入到头结点后面,完成逆序 { pPrevious->next = pCurrent->next; pCurrent->next = head->next; head->next = pCurrent; pCurrent = pPrevious->next; } }2.atoi
int atoi(const char* str) { if (str == NULL) { cout << "null string,error!" << endl; return -1; } int result = 0; char sign='+'; while (*str == ' ') ++str; if (*str == '-' || *str == '+') sign = *str++; while (*str != '\0') { if (isdigit(*str)) result = result * 10 + *str++ - '0'; else { cout << "illegal number error!" << endl; return -1; } } return sign == '+' ? result : -result; }
3.经典排序算法
void quickSort(int data[], int length) { if (length < 2) return; int i = 0, j = length - 1; int x = data[0]; while (i < j) { for (; i < j; j--) if (data[j] < x) { data[i++] = data[j]; break; } for (; i < j;i++) if (data[i]>x) { data[j--] = data[i]; break; } } data[i] = x; quickSort(data, i); quickSort(data + i + 1, length-i-1); }
相关文章推荐
- python实现链表逆序(反转函数)
- 已知链表的头结点head,写一个函数把这个链表逆序
- 已知单向链表的头结点head,写一个函数把这个链表逆序 ( Intel)
- 已知链表的头结点head,写一个函数把这个链表逆序
- 不带头节点链表逆序的两种方法
- vc中字符串和数字转换的函数:atoi,atol,strtod,strtol,strtoul 类型转换
- vc中字符串和数字转换的函数:atoi,atol,strtod,strtol,strtoul 类型转换
- Python中数组 链表 元组 字典实现类Sql多字段排序和动态函数实现
- C语言双向链表 快速排序
- 链表处理函数(自己总结)
- vc中字符串和数字转换的函数:atoi,atol,strtod,strtol,strtoul 类型转换
- C/C++面试之算法系列--典型的几个链表操作-逆序和重排
- 常见C语言面试题之九:链表逆序
- atoi () 函数
- 链表的逆序实现
- 一天一个C Run-Time Library 函数 (10) atol,atof,atoi, ltoa , itoa,
- 将一个链表按逆序排列,即将链头当链尾,链尾当链头
- 一个atoi的实现函数
- atoi()函数的做用
- atoi() & itoa()函数的内部的实现