自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 LeetCode题目:Linked List Cycle II

class Solution {public: ListNode *detectCycle(ListNode *head) { if (head == NULL) return NULL; ListNode *p1 = head, *p2 = head->next; if ( p2 == NULL) return NULL; if (p2 == head) {

2014-07-19 22:42:11 418

原创 LeetCode题目6:LRU Cache

LRU算法思想,可粗略参考本文:传送门,

2014-07-18 21:48:44 674

原创 LeetCode题目5:Insertion Sort List

这个题目要求利用插入排序来排序一个单链表。

2014-07-18 11:43:26 682

原创 LeetCode题目4:Sort List

这个题目要求在时间复杂度O(nLogn)、空间复杂度O(1)内,对单链表进行排序。常见的

2014-07-17 16:07:17 566

原创 利用快速排序对单链表进行排序

今天上午在K一道单链表排序题(目前LeetCode第四题),利用快速排序实现的版本过不了时间限制,不排除我实现中优化做得不够。Partition的算法和

2014-07-17 14:24:23 953

原创 LeetCode题目1~3

做了LeetCode前三题,感觉每道题目都很麻烦

2014-07-16 16:35:43 527

原创 2014大众点评Hackathon参赛感想

在点评公司安排的酒店里打下这行字,感慨还是不少的。主办方点评公司无论是吃住还是比赛安排上,看出来都非常用心:酒店的住宿日程安排很全面,零食足够,就算盒饭也是质量上乘。大家一致觉得要给好评。据说这次有2000+的人报名参赛,选拔到现场的60人机会还是挺宝贵的,我是线上测试来的,C++组第一名(共591人),Java组100名左右,C语言组50名左右,Obj-C组20名左右。因为C++组分差拉的比较大

2014-07-16 09:59:05 1025

原创 POJ 3669 Meteor Shower

#include#include#includeusing namespace std;#define MAX_X 400#define MAX_Y 400int a[MAX_X+1][MAX_Y+1];bool vi[MAX_X+1][MAX_Y+1];struct Pos{int x;int y;int t;};Pos v[4]={{0,1},{0,-1},{1,0}

2014-05-24 23:49:55 552

原创 POJ 3225 Roadblocks

贴一道利用优先队列实现的Dijkstra算法。这道题是要求次短路,所以对Dijkstra算法略作修改,同时保存最短和次短路数组。#include#include#include#include#include//#includeusing namespace std; struct Edge{ long long cost; int to;

2014-05-24 23:41:47 488

原创 POJ 3723 Conscription 并查集 + Kruskal

#include#include#includeusing namespace std;#define MAX_N 20002#define MAX_E 50001struct edge{ int u, v, cost;};int par[MAX_N];int Rank[MAX_N];edge es[MAX_E];int V, E;bool compare(co

2014-05-24 23:37:33 571

原创 C++实现的快速排序

快速排序,Quick Sort。采用了经典的分治思想:每次确定一个元素的位置,并将序列分为两个子序列:小于等于该元素、大于等于该元素。问题转为分别对刚得到的两个序列进行处理,直到序列长度为1.Partition函数是比较重要的,这里采用了和算法导论类似的想法:每次随机从中抽取一个元素A,将其与序列尾部元素交换。从头向后扫描,保存两个index:small、index。small逐渐

2014-05-14 23:58:58 780

原创 C++实现的一段希尔排序代码

#include#include#includeusing namespace std;void ShellSort(int *a, int n){ int d; d = n / 2; while (d >= 1) { for (int i = 0; i < d; i++) { for (int j = i; j < n; j += d) { //I

2014-05-13 23:19:25 563

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除