
每日练题
文章平均质量分 55
victory_523
爱生活,爱编程!!!
展开
-
剑指offer——反转链表
题目:定义一个函数,输入链表的头结点,反转该链表并输出反转后链表的头结点,链表结点结构定义如下:struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { }};解决与链表相关的问题总是有大量的指针操作,而指针操作的代码总是...原创 2018-03-24 17:38:05 · 206 阅读 · 0 评论 -
剑指offer——合并两个排序的链表
题目:输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按照递增排序的。链表的结点定义如下:struct ListNode{ int val; ListNode* next;};例如输入如图所示的链表1和链表2,合并之后为链表3:链表1:链表2:链表3:这是一个经常被各公司采用的面试题。在面试过程中,最容易犯的两个错误是:合并出来的链表要么中间断了,要么并没有做到递增排序程序...原创 2018-03-24 18:21:40 · 319 阅读 · 0 评论 -
空格替换题
1.将字符串“we are chinese people”中的空格替换为“%20”,使得输入“we are chinese people”时,输出“we%20are%20chinese%20people”。思路:首先统计出字符串中空格的个数;算出把“空格”替换成“%20”之后的新的字符串的元素个数;遍历原字符串找出“空格”所在的位置;进行“空格”替换;#include<string.h>...原创 2018-03-20 23:36:34 · 259 阅读 · 0 评论 -
求一个数二进制中1的个数
解法一:int NumOf1(int num){ int count = 0; for(int i = 0;i<31;i++) //控制右移的次数 { if(num & 1) { count++; } num = num >> 1; } return count;}解法二:int NumOf1(int num){ int coun...原创 2018-03-21 10:22:47 · 199 阅读 · 0 评论 -
剑指offer——3/24
1.堆栈溢出一般是什么原因导致的?堆栈溢出一般是循环的递归调用导致的,如果使用大数据结构的局部变量,也可能导致堆栈溢出。没有回收垃圾资源导致的是内存泄漏直到内存耗尽。2.什么是中断?中断时CPU做什么工作?中断是指在计算机执行期间,系统内发生任何非寻常的或者非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理完毕后又返回原来被中断处继续执行或者调度新的进程...原创 2018-03-24 16:13:45 · 202 阅读 · 0 评论