自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

wangxiaobupt的专栏

书写是为了更好的思考

  • 博客(41)
  • 资源 (2)
  • 收藏
  • 关注

原创 LeetCode 35 Search Insert Position

题目分析跟插入排序有点像不过区别就是: 如果主键一样的情况下,也会往前插入。第一个例子中的5可以插到下标为3个地方,结果需要插到下标为2的地方。那么从后往前遍历找到比需要插的值小的地方即可。题解class S

2015-04-27 15:35:07 604

原创 LeetCode 21 Merge Two Sorted Lists

题目分析归并的时候一定要注意一边已经被归并完了的情况。题解class Solution {public: ListNode* mergeTwoLists(ListNode* l1, ListNode* l2

2015-04-27 14:45:24 542

原创 LeetCode 193 Valid Phone Numbers

题目分析1.定死开头和结尾开头:要么是三个数字一个'-'  或者(三个数字)+ 一个空格  中间: 三个数字 + 一个‘-’结尾: 四个数字题解awk '/^([0-9]{3}-|

2015-04-26 21:55:31 1714

原创 awk命令学习总结

简介awk功能与sed相似,都是用来进行文本处理的。awk可以从文件或字符串中基于指定规则浏览和抽取信息,再进行其他文本操作。执行过程awk有BEGIN和END两个特殊的字段,执行过程为:1.读入文件前执行BEGIN字段的命令2.主输入循环,对每个输入文件进行处理3.

2015-04-25 11:51:47 713

原创 sed命令学习总结

简介sed是一个非交互式文本编辑器。它从文本的一个文本行或标准输入中读入数据,将其复制到缓冲区,然后读取命令行或脚本的第一个命令,对此命令要求的行号进行编辑。之后重复此过程,直到命令行中所有命令都执行完毕。由于sed只是对缓冲区中的副本文件进行编辑,因此不会影响原始的文件。基本用法调用sed有三

2015-04-24 23:36:28 621

原创 grep命令学习总结

简介grep是Global search Regular Expression and Print out the line的简称,它能使用正则表达式搜索文本并把匹配的行打印出来。基本用法一般格式为:grep [选项] [模式] [文件...]1.文件名可以有多个,搜索到的结果被打印到屏幕,不影响原文件的内容。

2015-04-24 22:48:48 613

原创 再探正则表达式与通配

正则表达式基础1. ‘ * ’ 符号匹配前面一个普通字符的0次或多次例:hel*o,*前面的元素是l,*字符表示匹配l字符的0次或多次,如字符串helo、hello、hellllllllo都可以表示。2.  ‘ . ’ 符号匹配任意一个字符,包括空格例:..123 ,前面2个字符

2015-04-24 21:46:02 2299

原创 LeetCode 69 Sqrt(x)

题目分析 从0到x的遍历肯定会超时,于是考虑用二分查找。大数据计算尽量不要用int来存。题解class Solution {public: int mySqrt(int x) { int i=0;

2015-04-24 15:44:57 561

原创 LeetCode 80 Remove Duplicates from Sorted Array II

题目分析对待这种题我一般就是把需要除去的数赋予一个很大的值,最后经过一个sort,所有不需要的数就到最后面去了。题解class Solution {public: int removeDuplicates(

2015-04-24 14:47:37 508

原创 LeetCode 141 Linked List Cycle

题目分析如果没有循环,在不断向后遍历的过程中最后肯定成为NULL如果有循环最后肯定会重复遍历同一个指针,那么只需要将遍历过的指针存起来即可,判断是否再次遍历到同一个指针。题解class Solution

2015-04-24 14:01:02 551

原创 LeetCode 38 Count and Say

题目分析数字爆炸型的题千万别用整数来存,最好还是用字符串来存。 题目比较简单,循环n-1次,每次循环记录相同字符的个数再拼凑到一块即可。题解string countAndSay(int n) {

2015-04-23 22:19:41 492

原创 LeetCode 203 Remove Linked List Elements

题目分析遍历一遍删去相应的节点即可。要注意的是,头节点可能也需要删,首先考虑找到真正的头结点。题解class Solution {public: ListNode* removeElements

2015-04-23 12:59:07 586

原创 LeetCode 9 Palindrome Number

题目分析判断是否为回文数。一般我采取的措施就是两个指针一前一后来判断对应位置的数是不是相等。题解class Solution {public: bool isPalindrome(int x) {

2015-04-23 11:18:06 573

原创 LeetCode 58 Length of Last Word

题目分析之前想的比较简单:从后往前遍历找到一个空格的地方,返回之间的差值。但是由于这个题例子的刁钻程度是不能行的,于是就先找字母出现的地方做个标记,再找空格出现的地方,返回差值。题解class Solution

2015-04-23 10:53:06 565

原创 LeetCode 195 Tenth Line

题目分析这道题好逗。题解sed -n '10p' file.txt

2015-04-22 22:50:24 1150

原创 LeetCode 192 Word Frequency

题目分析1.利用awk默认一行一条记录,默认以空格划分每条记录,NF为划分的总块数先打印出所有单词。2.排序+统计+消除重复3.输出题解awk '{i=1;while(i<=NF){print $i;

2015-04-22 22:14:39 2209

原创 LeetCode 26 Remove Duplicates from Sorted Array

题目分析统计删除重复后数组的长度比较简单,复杂的是如何很有效率的得到新数组。统计每个数字重复的个数,再将后面的数组整体向前移动几位也可以,不过可能太费时了。我采用的办法就是将重复的数字重新赋予一个很大的值,最后进行一个排序,那些没用的重复数据就到最后去了。

2015-04-22 21:46:25 529

原创 LeetCode 27 Remove Element

题目分析最简单的办法,虽然说效率可能比较低。。先排序统计个数count,把特定的数后面的数都向前移动count位即可。题解class Solution {public: int removeEl

2015-04-22 21:05:52 508

原创 LeetCode 70 Climbing Stairs

题目分析典型的斐波那契数列,f(n)=f(n-1)+f(n-2)可以用递归来做,不过递归比较慢要进行2^n次加法,最后申请了一个数组做循环加法。题解int climbStairs(int n) { int *ar

2015-04-22 19:42:10 672

原创 LeetCode 202 Happy Number

题目分析这题的核心就是怎么判断永远得不到1这个结果。在不断的运算中,如果平方和之前没得到过,那么它以后的结果我们可能很难预测会不会达到1。但是如果平方和我们已经得到过一次,说明已经进入了循环状态,那么按照特定的路线开始循环,肯定不会跳出这个圈子,就会始终得不到1。

2015-04-22 15:00:20 964

原创 Iterm2配色

Iterm2配色1. 首先配置 ~/.bash_profile 文件#enables colorin the terminal bash shell exportexport CLICOLOR=1#sets up thecolor scheme for list exportexport LSCOLORS=gxfxcxdxbxegedabagacad#s

2015-04-22 10:51:05 1187

原创 LeetCode 13 Roman to Integer

题目分析这道题只是基本的数学问题。题解int exchange(char c){ switch

2015-04-22 09:21:44 580

原创 LeetCode 136 Single Number

题目分析这是leetcode中通过率目前最高的一道题,只是按照最基本的方法一遍AC了。题解class Solution {public: int singleNumber(int A[], int n) { sort(A,A+n)

2015-04-21 23:17:14 636

原创 LeetCode 83 Remove Duplicates from Sorted List

题目分析做了不少递归的题了,经验就是一定要把当前节点的所有情况考虑清楚然后递归到下一个节点。每个节点完成它所需要完成的任务后返回。根据函数要求的返回值确定递归结束后需要返回什么。题解class Solution {

2015-04-21 19:02:52 831 1

原创 LeetCode 67 Add Binary

题目分析刚开始打算先换成十进制算出结果再换回二进制,后来一想万一有60、70位数根本就存不下来........于是直接模拟的加法来算,维护一个进位。需要注意的就是如果最后进位依然是1时,记得在结果前面补1。题解cla

2015-04-21 18:10:10 512

原创 LeetCode 100 Same Tree

题目分析树的题一般用递归就可以解决,每次写递归函数的时候都不知道写的全不全,结果每次都是一遍就能过=  =判断两棵树是否一样在判断的时候只要发现一处不一样,结果就是不一样。如果全部一样才一样。经验就是一定要把根节点的情况分析清楚,可能存在可能不存在,也可能一个存在一个不存在,当两个根节点都存在的情况下数

2015-04-19 21:09:02 493

原创 LeetCode 66 Plus One

题目分析从低位开始,如果不进位则加1直接返回即可。如果有进位则循环移动到高位加进位判断高位是否也需要进位,以此类推,如果最高位也要进位则需要开辟一个新数组(最高位为1,其余为0)。题解class Solution {public: vector pl

2015-04-19 20:38:12 548

原创 LeetCode 104 Maximum Depth of Binary Tree

题目分析求二叉树的深度,则可以用递归的方式。二叉树的深度 = 1 + 左右子树中深度大的那个题解class Solution {public: int maxDepth(TreeNode

2015-04-16 23:13:24 502

原创 LeetCode 169 Majority Element

题目分析求众数,先排序,一次遍历,剪枝法将出现最多的数存起来即可。题解class Solution {public:int majorityElement(vector &num) { int length=1,lengthtemp=1; sort(n

2015-04-16 22:50:45 509

原创 LeetCode 171 Excel Sheet Column Number

题目分析先抽象成一个数学问题,发现其实就是个26进制的数,A代表1,Z代表26,要求将此26进制数转换为10进制数。纯纯的数学问题了。。题解class Solution {public: int tit

2015-04-16 18:37:59 655

原创 LeetCode 190 Reverse Bits

题目分析1.通过 ‘与’的方式来判断输入的数的某一位(x)上是0还是1。2.通过 加2*(31-x)来给结果置0或1。题解class Solution {public: uint32_t reverseBits(uint32_t n) {

2015-04-16 17:55:26 518

原创 LeetCode 191 Number of 1 Bits

题目分析这道题比较简单,定义一个32位的1与参数进行 ‘与’运算,并且进行移位来确定一共有多少1。题解class Solution {public: int hammingWeight(uint32_t n) { int coun

2015-04-16 16:12:57 510

原创 crontab命令学习笔记

一、crontab文件用户所建立的crontab文件中,每一行都代表一项任务。每一行分为6部分,前5部分为时间设定,第六部分为要执行的命令。格式如下:minute   hour   day   month   week   command *   代表所有可能的值,

2015-04-16 15:21:35 613

原创 LeetCode 4 Median of Two Sorted Arrays

题目分析题目要求是求两个数组合起来的中位数,并要求在一定的时间复杂度内。求中位数时要考虑总个数是奇数还是偶数的情况,奇数时中位数为最中间的那个,偶数时为最中间两个和的平均值。解题时用了最普通的方法,用两个指针分别指向两个数组首部,通过比大小、移动指针找到了最中间数的值,算出中位数返回即可。要

2015-04-14 21:35:40 633

原创 LeetCode 3 Longest Substring Without Repeating Characters

题目分析题意为寻找没有重复字母的最长串的长度。为了快速知道该字母是否出现过,则考虑用hashtable。刚开始写的时候用一个头指针指向开始的位置,当找到重复的之后从这个头指针位置的下一个位置重新开始找,并且头指针移向下一位。这样的后果是显而易见的 超时。之后仔细想了一下这个过

2015-04-14 15:19:24 561

原创 LeetCode 2 Add Two Numbers

题目分析题目比较简单,从前往后依次遍历求和即可。题解/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * L

2015-04-13 16:11:14 445

原创 LeetCode 1 Two Sum

题目分析看完题目首先可以考虑直接暴力破解,不过O(n*2)的时间复杂度会超时,需要降低时间复杂度。1.先进行一个快排,两个指针分别指向首(i)尾(j),若和大于要求值则 j--,否则i++2.先进行一个快排,再在数组中通过二分查找另一个数。题解1.vo

2015-04-11 21:59:55 665

原创 小试牛刀爬北邮人论坛十大

本来是为了写Alfred的work flow 不知道出了什么问题 一直都显示不了 sad =   =先把爬虫的代码贴这好了  好久没碰过python了# -*- coding: utf-8 -*-__author__ = 'wangxiao'import requestsfrom bs4 import BeautifulSouplinks=[]content

2015-04-10 20:50:06 2972 2

原创 Safari如何查看网页源代码

打开 Safari偏好设置 > 高级 >  勾选 在菜单栏 ‘开发’然后右键,就可以看到 ‘检查元素’ 选项

2015-04-10 15:40:41 2242

原创 微信平台文本消息使用超链接形式

方法:将网站用双括号括起来“ ”即可$retMsg = '免费上网链接 ';实例:if($xmlObj->Content=='免费上网'){ $retMsg = '免费上网链接 ';}$retTmp = " %s 0 ";$resultStr = sprintf($retTmp, $fromUserName, $toUs

2015-04-04 14:35:31 5555

空空如也

空空如也

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

TA关注的人

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