Insertion Sort List 【leetcode】
来源:互联网 发布:晋江网店美工培训 编辑:程序博客网 时间:2024/05/18 03:07
今天面试第一个笔试通过的公司(去哪儿网),今天早上就空腹去检查胃,喝钡餐,还没吃东西,加上早起,晚上没睡好,最近几天压力大(失眠),精神紧张,面试的时候完全昏昏沉沉,没状态,结果一面就没过。下午写一个链表的插入排序也写了一下午,真是坑爹啊。
胃下垂还要多餐少吃,坑爹。
题目的意思是给你一个链表,让你排序,小的在前面大的在后面(题目你怎么不说啊),而且head这个元素本事 是有值的,就是说head->val等于某个值,而它不仅仅只是一个指针。
自己设置一个哨位节点来指向head,在进行排序
若前面的n个一直有序,我就跳过,到某一个不在有序了,我查找到它应该插入的位置,然后进行插入操作。
//============================================================================// Name : sort_list.cpp// Author : menglei// Version :// Copyright : Your copyright notice// Description : Hello World in C++, Ansi-style//============================================================================#include "stdafx.h"#include <iostream>using namespace std;struct ListNode {int val;ListNode *next;ListNode(int x) : val(x), next(NULL) {}};void show(ListNode * h){while (h != NULL){cout << h->val << "->";h = h->next;}cout << endl;}//======================================================ListNode *insertionSortList(ListNode *head) {ListNode dummy(-1);//哨位dummy.next = head;if (dummy.next == NULL || dummy.next->next == NULL){return dummy.next;}ListNode* pre = dummy.next;ListNode * cur = pre->next;while (cur){if (pre->val <= cur->val){cur = cur->next;pre = pre->next;}else{ListNode *preinsert = &dummy;ListNode *insert = preinsert->next;while (insert->val < cur->val){insert = insert->next;preinsert = preinsert->next;}//insertpre->next = cur->next;cur->next = insert;preinsert->next = cur;cur = pre->next;}}return dummy.next;}//==========================================================int main() {ListNode *head;ListNode a(1);ListNode b(3);ListNode c(5);ListNode d(4);ListNode e(3);ListNode f(6);head = &a;a.next = &b;b.next = &c;c.next = &d;d.next = &e;e.next = &f;show(head);ListNode *t;t = insertionSortList(head);show(t);return 0;}
0 0
- Insertion Sort List | leetcode
- Leetcode: Insertion Sort List
- [LeetCode] Insertion Sort List
- Leetcode: Insertion Sort List
- leetcode-Insertion Sort List
- [LeetCode]Insertion Sort List
- 【LeetCode】Insertion Sort List
- LeetCode | Insertion Sort List
- LeetCode - Insertion Sort List
- [LeetCode] Insertion Sort List
- Insertion Sort List (LeetCode)
- [LeetCode] Insertion Sort List
- [LeetCode]Insertion Sort List
- leetcode Insertion Sort List
- Insertion Sort List -- LeetCode
- Insertion Sort List (LeetCode)
- LeetCode Insertion Sort List
- leetcode Insertion Sort List
- C语言版二分查找算法
- IRP_MJ_INTERNAL_DEVICE_CONTROL
- android开源项目和框架
- hdu1233还是畅通工程
- Java动态编译
- Insertion Sort List 【leetcode】
- LeetCode - Count and Say
- 全排列 DFS 函数模板
- fat-jar的使用
- Android之Adapter用法总结
- Codeforces Round #265 (Div. 2) C. No to Palindromes!
- SessionManagementFilter分析--上
- 静态导入
- Windows下搭建PHP开发环境