Merge Two Sorted Lists, 合并两个有序链表
2016-07-16 20:01
399 查看
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) { //考虑空指针问题 //采用非递归写法 if (!l1) return l2; if (!l2) return l1; ListNode *p, *q, *r, *pHead; p = l1; q = l2; if (p->val <= q->val) { pHead = p; p = p->next; } else { pHead = q; q = q->next; } r = pHead; while (1) { if (!p) { r->next = q; break; } if (!q) { r->next = p; break; } if (p->val <= q->val) { r->next = p; r = p; p = p->next; } else { r->next = q; r = q; q = q->next; } } return pHead; } };同样,也可以采用递归写法,见《剑指offer》
相关文章推荐
- MFC下在利用控制台输入输出 方便调试
- fgets
- MFC无标题栏对话框移动的处理方法
- 关于MFC中WM_MOUSEHOVER和WM_MOUSELEAVE消息的使用
- CDC * pdc 指针 与 hdc 转换
- API 根据句柄 获得进程可执行文件路径的几种方法
- 开发部署一个智能合约(以太坊-Ethereum)
- mac下安装tensorflow
- hdu1002大数相加
- Training2:位操作训练
- Codeforces 601A The Two Routes
- web---bootstrap
- vector删除操作 erase方法注意事项
- TCP为什么要三次握手而结束要四次
- MFC使用Unicode字符集在网络编程接收数据乱码或不完整的解决办法
- #1000 POJ
- latex 复杂表格(多行多列)的制作
- latex 中图片或者表格跨两栏居中的方法
- 19. Remove Nth Node From End of List
- latex 表格中单元格换行,显示多行