自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(103)
  • 资源 (4)
  • 收藏
  • 关注

原创 37-Invert Binary Tree

Invert Binary Tree My Submissions QuestionEditorial Solution Total Accepted: 87818 Total Submissions: 193396 Difficulty: Easy Invert a binary tree.4 / \ 2 7 / \ / \ 1 3 6 9 to 4

2016-04-30 23:52:59 3628

原创 36-Same Tree

Same Tree My Submissions QuestionEditorial Solution Total Accepted: 126116 Total Submissions: 291884 Difficulty: Easy Given two binary trees, write a function to check if they are equal or not.Two

2016-04-30 23:45:11 3639

原创 35-Remove Element

Remove Element My Submissions QuestionEditorial Solution Total Accepted: 115367 Total Submissions: 340963 Difficulty: Easy Given an array and a value, remove all instances of that value in place an

2016-04-30 23:39:37 3699

原创 34. Swap Nodes in Pairs

Swap Nodes in Pairs My Submissions QuestionEditorial Solution Total Accepted: 95230 Total Submissions: 270562 Difficulty: Easy Given a linked list, swap every two adjacent nodes and return its head

2016-04-30 23:27:07 3743

原创 33. Implement strStr()

Implement strStr() My Submissions QuestionEditorial Solution Total Accepted: 104556 Total Submissions: 420107 Difficulty: Easy Implement strStr().Returns the index of the first occurrence of needl

2016-04-30 23:08:33 3713

转载 深入浅出KMP

字符串匹配是计算机的基本任务之一。举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串"ABCDABD"?许多算法可以完成这个任务,Knuth-Morris-Pratt算法(简称KMP)是最常用的之一。它以三个发明者命名,起头的那个K就是著名科学家Donald Knuth。这种算法不太容易理解,网上

2016-04-30 20:20:50 2233

转载 BAT的一些题

114、java中实现多态的机制是什么答:重写,重载。方法的重写Overriding和重载Overloading是Java多态性的不同表现。 重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中

2016-04-30 17:31:50 10315

原创 32-3Sum

3Sum My Submissions QuestionEditorial Solution Total Accepted: 115154 Total Submissions: 612489 Difficulty: Medium Given an array S of n integers, are there elements a, b, c in S such that a + b +

2016-04-30 12:44:37 10812

转载 hash_map,map,unordered_map效率

利用unordered_map代替hash_map实验环境操作系统 fedora9编译器版本 gcc4.3实验方式 各种map使用插入和查找,比较速度和相关性能代码参考代码下面测试说明了速度之间的比较:map类型插入速度插入和查找速度hashmap0m0.123s0m0.369smap

2016-04-30 11:18:28 8221

原创 Bebug与Release版本

如果调试过程无调试信息,检查编译选项是否切换到了release下比如Cfree5等编译器ms为了方便调试才诞生了DEBUG版。这也导致了MFC有两个功能一至但版本不同的类库,一个为DEBUG版,一个是RELEASE版。DEBUG:这个版本生成的文件包含调试信息可以在DEV环境下很方便的调试它。RELEASE:经过优化的,不包含调试信息。生成的文件也相对较小。

2016-04-30 09:48:40 7203

原创 ubuntu常见错误--Could not get lock /var/lib/dpkg/lock

ubuntu常见错误--Could not get lock /var/lib/dpkg/lock 通过终端安装程序sudo apt-get install xxx时出错: E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)E: Unable

2016-04-29 20:35:40 4951

转载 解决多线程代码中的 11 个常见的问题

解决多线程代码中的 11 个常见的问题Joe Duffy本文将介绍以下内容:基本并发概念并发问题和抑制措施实现安全性的模式横切概念本文使用了以下技术: 多线程、.NET Framework  目录数据争用 忘记同步 粒度错误 读写撕裂 无锁定重新排序 重新进入

2016-04-29 19:16:57 4825

转载 Sed详解

1. Sed简介sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。以下

2016-04-29 19:07:28 5349

转载 浏览器点击URL的响应过程

原文:http://igoro.com/archive/what-really-happens-when-you-navigate-to-a-url/  作为一个软件开发者,你一定会对网络应用如何工作有一个完整的层次化的认知,同样这里也包括这些应用所用到的技术:像浏览器,HTTP,HTML,网络服务器,需求处理等等。本文将更深入的研究当你输入一个网址的时候,后台到底发生了一件件什么

2016-04-29 15:57:58 5429

原创 memset初始化值的效率高于or循环

在一亿数据的赋值下,memset使用了1ms,而for循环使用了136ms贴上代码:#include #include #include #include #define MAXSIZE 10000using namespace std;#include #include int get_time(string r){

2016-04-29 13:04:04 5712

转载 Go语言缺陷

我为什么放弃Go语言目录(?)[+]我为什么放弃Go语言有好几次,当我想起来的时候,总是会问自己:我为什么要放弃Go语言?这个决定是正确的吗?是明智和理性的吗?其实我一直在认真思考这个问题。开门见山地说,我当初放弃Go语言(golang),就是因为两个“不爽”:第一,对Go语言本身不爽;第二,对Go语言社区里的某些人不爽。毫无疑问

2016-04-29 10:21:12 7966 1

转载 使用快速傅里叶变换计算大整数乘法-代码

在上一篇随笔“使用快速傅里叶变换计算大整数乘法”中,已经讲述了使用快速傅里叶变换计算大整数乘法的原理。在这一篇随笔中,我们就使用快速傅里叶变换来实现一个提供任意精度的算术运算的静态类:BigArithmetic。下面就是 BigArithmetic 类源程序代码:   1 using System;  2 using System.Diagnostics;  3 

2016-04-28 22:47:34 9301

转载 karatsuba乘法

karatsuba乘法Karatsuba乘法是一种快速乘法。此算法在1960年由Anatolii Alexeevitch Karatsuba 提出,并于1962年得以发表。[1]  此算法主要用于两个大数相乘。普通乘法的复杂度是n2,而Karatsuba算法的复杂度仅为3nlog3≈3n1.585(log3是以2为底的)[2]  。目录1 算法描

2016-04-28 22:46:10 5171

转载 傅里叶变换与大数乘法

我们知道,两个 N 位数字的整数的乘法,如果使用常规的算法,时间复杂度是 O(N2)。然而,使用快速傅里叶变换,时间复杂度可以降低到 O(N logN loglogN)。 假设我们要计算以下两个 N 位数字的乘积:a = (aN-1aN-2...a1a0)10 = aN-1x10N-1 + aN-2x10N-2 + ... + a1x101 + a0x100b =

2016-04-28 22:05:34 8317

原创 31-Longest Common Prefix

Longest Common Prefix My Submissions Difficulty: Easy Write a function to find the longest common prefix string amongst an array of strings.难度:easy 思路:求解所有字符串的最长前缀 首先拿第一个字符串作为标准,从第一个字符串开始检测,如果其

2016-04-28 20:20:40 5316

原创 30-Container With Most Water-Leetcode

Given n non-negative integers a1, a2, …, an, where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) and (i, 0). Find two lin

2016-04-28 19:23:53 5184

原创 29-Regular Expression Matching-leetcode

‘.’ Matches any single character. ‘*’ Matches zero or more of the preceding element.The matching should cover the entire input string (not partial).The function prototype should be: bool isMatch(cons

2016-04-28 17:48:16 5151

原创 28-Merge Two Sorted Lists

easy 21. Merge Two Sorted Lists Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists. 思路:利用map映射,值->指针集合,然后按值从

2016-04-28 13:31:00 5030

原创 27-Roman to Integer-Leetcode

Given a roman numeral, convert it to an integer.Input is guaranteed to be within the range from 1 to 3999.思路:先构造罗马与数字的映射,接着对给定的字符串从头开始进行最长匹配,最大为4,依次进行,匹配完成则乘以相应位的量级,时间复杂度为O(n)#include <algorithm>#incl

2016-04-28 13:21:21 4941

原创 26-Palindrome Number

回文数的判定,不使用额外的空间 Determine whether an integer is a palindrome. Do this without extra space.思路:将一个整数逆转,判定和原来的数相不相等 注意负数一定不是回文数#define IMAX numeric_limits<int>::max()#define IMIN numeric_limits<int>::m

2016-04-28 12:11:55 4981

原创 25-ZigZag Conversion

The string “PAYPALISHIRING” is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility)P A H N A P L S I I G

2016-04-28 10:21:36 4967

原创 n组字母和最大

字母A-J,用0-9对应字母使得n组数据和最大,输入字符串前面保证非0 如输入组数据: 2 ABC BCA 输出: 1875思路:其实就是求和,对应字符乘以相应的量级,按系数排序 如上MAX(101A+110B+11C) 那B:9 A:8,C:7产生最大和 同时考虑类型为字符串涉及字符串加法#include <algorithm>#include <iostream>#inc

2016-04-27 22:39:30 4565

原创 24-Longest Palindromic Substring-Leetcode

Given a string S, find the longest palindromic substring in S. You may assume that the maximum length of S is 1000, and there exists one unique longest palindromic substring. 这里给出一种AC的动态规划解法:时间和空间复杂度O

2016-04-27 18:18:07 4362

转载 谈谈为什么要系统学习算法-开复的一篇文章

算法是内功,程序员别冷落算法!来源:李开复,写于 2006 年链接:http://blog.jobbole.com/99658/算法的力量算法是计算机科学领域最重要的基石之一,但却受到了国内一些程序员的冷落。许多学生看到一些公司在招聘时要求的编程语言五花八门就产生了一种误解,认为学计算机就是学各种编程语言,或者认为,学习最新的语言、技术、标准就是

2016-04-27 18:00:48 4600

原创 vector初始化的几种方式-STL

vector::iterator int_ite; vector::iterator string_ite; //vector v(n,i)形式,v包含n 个值为 i 的元素 vector ivec(10,0); //vector v(v1)形式,v是v1 的一个副本 vector ivec1(ivec); //vector v(n)形式,v包含n

2016-04-27 11:54:28 4892

原创 23-Longest Substring Without Repeating Characters

Given a string, find the length of the longest substring without repeating characters.Examples:Given “abcabcbb”, the answer is “abc”, which the length is 3.Given “bbbbb”, the answer is “b”, with the le

2016-04-26 13:35:32 4359

转载 C++ STL算法之:copy

C++ STL算法:copy目录(?)[+]       前面十二个算法所展现的都属于非变易算法(Non-mutating algorithms)系列,现在我们来看看变易算法。所谓变易算法(Mutating algorithms)就是一组能够修改容器元素数据的模板函数,可进行序列数据的复制,变换等。       我们现在来看看第一个变易算法:

2016-04-26 11:16:38 5104

转载 C++类虚函数内存分布(这个 你必须懂)

转自:http://www.cnblogs.com/jerry19880126/p/3616999.htmlC++类内存分布书上类继承相关章节到这里就结束了,这里不妨说下C++内存分布结构,我们来看看编译器是怎么处理类成员内存分布的,特别是在继承、虚函数存在的情况下。工欲善其事,必先利其器,我们先用好Visual Studio工具,像下面这样一步一步来: 

2016-04-25 23:10:50 4967

原创 C++你不知道的事

class A {public: A() { cout<<"A's constructor"<<endl; } virtual ~A() { cout<<"A's Destructor"<<endl; }};class B : public A {public: B() { cout<<"B's constructor"<<endl; } virtual ~B(

2016-04-25 22:55:37 4474

原创 22-reverseString-Leetcode

思路:so easyclass Solution {public: string reverseString(string s) { int n = s.size(); for(int i=0;i<n/2;++i) { char c = s[i]; s[i] = s[n-1-i];

2016-04-24 23:00:32 4490

转载 Redis源码解析(1)

在文章的开头我们把所有服务端文件列出来,并且标示出其作用:adlist.c //双向链表ae.c //事件驱动ae_epoll.c //epoll接口, linux用ae_kqueue.c //kqueue接口, freebsd用ae_select.c //select接口, windows用anet.c //网络处理aof.c //处理AOF文件config.c

2016-04-24 22:55:17 4422

原创 Redis之1-基本目录

概念      redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样

2016-04-24 22:51:38 5459

原创 C4.5决策树-为什么可以选用信息增益来选特征

要理解信息增益,首先要明白熵是什么,开始很不理解熵,其实本质来看熵是一个度量值,这个值的大小能够很好的解释一些问题。 从二分类问题来看,可以看到,信息熵越是小的,说明分类越是偏斜(明确),可以理解为信息熵就是为了消除分类不确定性的,决策树本就是根据一个个问题的答案去尽可能明确的找出规律去告诉别人这条数据的类别,如果说类被均匀的分到两边,相当于你问别人,明天会小雨吗,别人告诉你可能会下可能不会小

2016-04-24 22:33:30 8271 1

转载 C/C++内存泄漏及检测

C/C++内存泄漏及检测“该死系统存在内存泄漏问题”,项目中由于各方面因素,总是有人抱怨存在内存泄漏,系统长时间运行之后,可用内存越来越少,甚至导致了某些服务失败。内存泄漏是最难发现的常见错误之一,因为除非用完内存或调用malloc失败,否则都不会导致任何问题。实际上,使用C/C++这类没有垃圾回收机制的语言时,你很多时间都花在处理如何正确释放内存上。如果程序运行时间足够长,如后台进程运行在服

2016-04-24 14:26:50 4625

原创 谈谈布隆过滤器(比哈希表省很多内存,简言之更牛逼)

之前就阅读过数学之美,知道有这么个强大的工具,可是因为不常用到也就没当回事,最近重新看到它觉得很高大上,就想来mark下设计初衷: (Bloom Filter)是由布隆(Burton Howard Bloom)在1970年提出的,不知道当时布隆为啥想到设计时究竟是碰到了啥问题,但这确实很有效 来看下面的问题: 1.检查一个单词是否拼写正确->看它是否在已经字典中 2.网络爬虫->一个网址是否

2016-04-24 12:55:17 9182 1

iphone实用项目-淘宝客户端

iphone实用项目-淘宝客户端,看看吧

2014-06-17

VC++实用界面项目

VC++下实际的项目开发,包括所有界面的重新绘制,按钮的重绘,编辑框的重绘,使得界面更加美观

2014-06-17

iphone计算器

iphone计算器,已经做好了美丽的图片,也实现了连加等,实现了运算符的优先是被

2012-05-13

空空如也

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

TA关注的人

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