leetcode 147 —— Insertion Sort List
2015-08-17 10:47
501 查看
Sort a linked list using insertion sort.
思路:插入排序,从今天起,养成良好的编程风格
class Solution {
public:
ListNode* insertionSortList(ListNode* head) {
if (head == nullptr || head->next == nullptr)
return head;
ListNode* pre = new ListNode(0);
ListNode* p = pre;
p->next = head;
ListNode* end = head;
ListNode* cur = head ->next;
ListNode* tmp = cur;
while (cur != nullptr){
p = pre;
while (p!=end && p->next->val < cur->val){
p = p->next;
}
if (p != end){
tmp = p->next;
end->next = cur->next;
p->next = cur;
cur->next = tmp;
cur = end->next;
}
else{
end = cur;
cur = cur->next;
}
}
return pre->next;
delete pre;
}
};
思路:插入排序,从今天起,养成良好的编程风格
class Solution {
public:
ListNode* insertionSortList(ListNode* head) {
if (head == nullptr || head->next == nullptr)
return head;
ListNode* pre = new ListNode(0);
ListNode* p = pre;
p->next = head;
ListNode* end = head;
ListNode* cur = head ->next;
ListNode* tmp = cur;
while (cur != nullptr){
p = pre;
while (p!=end && p->next->val < cur->val){
p = p->next;
}
if (p != end){
tmp = p->next;
end->next = cur->next;
p->next = cur;
cur->next = tmp;
cur = end->next;
}
else{
end = cur;
cur = cur->next;
}
}
return pre->next;
delete pre;
}
};
相关文章推荐
- 单选 性别选项(男,女)提交问题
- Eclipse编译调试Cocos2d问题汇总
- php面向对象要点[转]
- 101 Symmetric Tree
- 平衡
- iOS学习路线图
- [ios]sqlite轻量级数据库学习连接
- 简单表的 分页存储过程 (不支持多表连接)
- java小游戏-坦克大战,事后总结
- 正则表达式
- poj-1840 Eqs 暴力+哈希
- DataGirdView嵌套mdi中样式影响后的解决方案
- DECLARE_DYNAMIC和IMPLEMENT_DYNAMIC宏
- 如何改变Javascript在页面的执行顺序
- svn merge branch
- 开门红
- 从数据库取数据
- 封装的一些例子
- php图片水印添加,压缩,剪切的封装类
- Spring MVC 解读——@Autowired、@Controller、@Service从原理层面来分析