自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小夥的博客

恩,慢慢加油,慢慢积累

  • 博客(189)
  • 资源 (4)
  • 收藏
  • 关注

原创 LeetCode 421. Maximum XOR of Two Numbers in an Array 解题报告(Trie树)

Given anon-emptyarray of numbers, a0, a1, a2, … , an-1, where 0 ≤ ai< 231.Find the maximum result of aiXOR aj, where 0 ≤i,j<n.Could you do this in O(n) runtime?Example:Input: [3...

2019-04-16 22:50:25 155

原创 2019腾讯实习提前批笔试题-气球游戏(滑动窗口)

小Q在进行射击气球的游戏,如果小Q在连续T枪中打爆了所有颜色的气球,将得到一只QQ公仔作为奖励。(每种颜色的球至少被打爆一只)。这个游戏中有m种不同颜色的气球,编号1到m。小Q一共有n发子弹,然后连续开了n枪。小Q想知道在这n枪中,打爆所有颜色的气球最少用了连续几枪?输入格式第一行包含两个整数n和m。第二行包含n个整数,分别表示每一枪打中的气球的颜色,0表示没打中任何颜色的...

2019-04-16 15:58:19 1598

原创 2019腾讯实习提前批笔试题-猜拳游戏(逆元,快速幂)

小Q和牛妹参加一个剪刀石头布的游戏,游戏用卡片来玩,每张卡片是剪刀,石头,布中的一种,每种类型的卡片有无限个。牛妹从中选了n张卡片排成一排,正面朝下,小Q也会选择n张卡片排成一排,然后小Q和牛妹的卡片会依次进行比对,第一张对第一张,第二张对第二张…如果小Q赢,小Q会得到一分,现在已知牛妹的每一张牌以及小Q最终的得分 s,请问小Q有多少种选择卡片的方案(多少不同的排列)输入格式第一行...

2019-04-16 14:43:24 367

原创 剑指offer-面试题20:表示数值的字符串

请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。思路:首先可以推出格式(+-)(num1)(.num2)([Ee](+-)(num3)),其中num123均为1-9的数字串。当Ee存在时,后面的数...

2019-04-11 18:48:39 175

原创 剑指offer-面试题19:正则表达式匹配

请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"ab*ac*a"匹配,但是与"aa.a"和"ab*a"均不匹配思路:由于*号比较难处理,先考虑*号的情况。当*(pattern+1) == '*'的时...

2019-04-11 18:47:20 166

原创 剑指offer-面试题18:删除链表的结点

题目一:在O(1)的时间内删除链表结点(牛课无该题)给定单向链表的头指针和一个节点指针,定义一个函数在O(1)时间内删除该节点。思路:首先判断该节点p有没有next,如果有,直接p=p->next,相当于就删除了该节点。其次,在没有next的情况下,分两种情况,该节点是头结点(链表只有一个元素)或者该节点不是头结点。当该节点是头结点的时候,返回nullptr即可,不是的时候,从头往后...

2019-04-11 18:40:17 137

原创 剑指offer-面试题17:打印从1到最大的n位数(牛课无该题)

输入数字n,按顺序打印出从1到最大的n位十进制数,比如输入3,则打印出1、2、3....999。思路:由于n的大小不一定,所以可能longlong也存不下。1、模拟法,利用字符串模拟加法操作2、全排列,利用递归处理代码一(模拟):bool increment(char *s, int n){ s[0]++; int t = 0; w...

2019-04-11 18:37:01 80

原创 剑指offer-面试题16:数值的整数次方

面试题16:数值的整数次方给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。思路:方法1,直接求,注意任意数的0次方等于1,负数的次方等于它的倒数(时间复杂度O(n))。方法2,利用平方的性质,a^n=a^(n/2) * a^(n/2)或a^n=a^(n-1/2) * a^(n-1/2)*a(分别为偶数、奇数的情况)(时间复杂度O...

2019-04-11 18:35:53 144

原创 剑指offer-面试题15:二进制中1的个数

面试题15:二进制中1的个数输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。思路:方法1,使用一个无符号的整数1,从右到左去&n,执行完一次后,向左移位(对于32位整数来说,需要执行32次)。方法2,使用n&(n-1),来求(执行次数为1的个数)。代码一(普通解法):int NumberOf1(int n){ int count = 0;...

2019-04-11 18:24:46 82

原创 剑指offer-面试题13:机器人的运动范围

地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+5+3+8 = 19。请问该机器人能够达到多少个格子?思路:dfs狂搜class Solution ...

2019-04-11 17:18:13 64

原创 剑指offer-面试题12:矩阵中的路径

请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则之后不能再次进入这个格子。 例如 a b c e s f c s a d e e 这样的3 X 4 矩阵中包含一条字符串"bcced"的路径,但是矩阵中不包含"abcb"路径,因为字符串的第一个...

2019-04-11 17:17:28 67

原创 剑指offer-面试题11:旋转数组的最小数字

面试题11:旋转数组的最小数字把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。思路:由于旋转数组的特性,尾元素肯定是小于首元素的(当不考虑重复值时)。所以,每次找中...

2019-04-11 17:16:23 101

原创 剑指offer-面试题10:斐波那契数列

题目一:寻找斐波那契第n项大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39思路:1、递归(由于可能发生栈溢出,故不推荐)2、循环(推荐,这里使用)3、公式法(可以了解)class Solution {public: int Fibonacci(int n) { if(n == ...

2019-04-04 11:26:39 97

原创 剑指offer-面试题9:用两个栈实现队列

面试题9:用两个栈实现队列用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。思路:用stack2用于输出,每次存入stack1,当要输入时,倒入到stack2。class Solution{public: void push(int node) { stack1.push(node); } int pop(...

2019-04-04 11:25:03 128

原创 剑指offer-面试题8:二叉树的下一个结点

面试题8:二叉树的下一个结点给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。思路:如果该结点有右子树,那么下一个结点为它右子树的最左子树。如果没有右子树,那么下一个结点为它父节点(当且仅当它自己是该父节点的左子树,如果不是,继续往上找)。/*struct TreeLinkNode { in...

2019-04-04 11:23:32 77

原创 剑指offer-面试题7:重建二叉树

面试题7:重建二叉树输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。思路:根据二叉树遍历的性质,得知前序的第一个元素为父节点,中序父节点两边的分别为它的左右子树,递归即可。class Solutio...

2019-04-04 11:13:06 70

原创 剑指offer-面试题6:从尾到头打印链表

面试题6:从尾到头打印链表输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。思路:有两种方向,一是循环,用栈存储。二是递归。但是由于递归可能导致爆栈,故不建议采用。/*** struct ListNode {* int val;* struct ListNode *next;* ListNode(int x) :* ...

2019-04-04 11:11:11 114

原创 剑指offer-面试题5:替换空格

面试题5:替换空格请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。思路:首先要确定是不是在本身上修改,如果是,则要题目保证内存足够。否则,可以考虑自己new空间。先统计空格数,然后倒着赋值即可。class Solution {public: void r...

2019-04-04 11:07:16 77

原创 剑指offer-面试题4:二维数组中的查找

面试题4:二维数组中的查找在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路:1、可以考虑对每行进行二分查找2、以右上或左下为起点,这里选择右上,依次向左扫描,如果当前值小于target,则row++(每行最后一个是该行最大的,如果它都小...

2019-04-04 11:04:46 89

原创 Java中移位运算符>>与无符号移位>>>详解

>>表示右移,如果该数为正,则高位补0,若为负数,则高位补1;(补的数依当前符号位来定,符号位也会被移动)>>>表示无符号右移,也叫逻辑右移,即若该数为正,则高位补0,而若该数为负数,则右移后高位同样补0。表达式为:result = exp1 >> exp2; result = exp2 >>> exp2; 表示把数exp1向右...

2019-04-04 10:55:18 515

原创 C++链表操作

反转链表#include using namespace std;struct NODE{ int data; NODE *next;};NODE* fnew(NODE* L){ NODE *head, *p; head = new NODE; head->next = NULL; while(L->next != NULL)

2017-11-17 21:28:35 214

原创 团体程序设计天梯赛-练习集 L3-011. 直捣黄龙 最短路 dijkstra 解题报告

L3-011. 直捣黄龙时间限制150 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越本题是一部战争大片 —— 你需要从己方大本营出发,一路攻城略地杀到敌方大本营。首先时间就是生命,所以你必须选择合适的路径,以最快

2017-03-19 21:44:20 631

原创 团体程序设计天梯赛-练习集 L3-007. 天梯地图 最短路 dijkstra 解题报告

L3-007. 天梯地图时间限制300 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越本题要求你实现一个天梯赛专属在线地图,队员输入自己学校所在地和赛场地点后,该地图应该推荐两条路线:一条是最快到达路线;一条是最短

2017-03-19 16:16:34 1723

原创 团体程序设计天梯赛-练习集 L3-002. 堆栈 线段树 单点更新 解题报告

L3-002. 堆栈时间限制200 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越大家都知道“堆栈”是一种“先进后出”的线性结构,基本操作有“入栈”(将新元素插入栈顶)和“出栈”(将栈顶元素的值返回并从堆栈中将其删

2017-03-19 11:22:52 560

原创 团体程序设计天梯赛-练习集 L3-005. 垃圾箱分布 dijkstra 解题报告

L3-005. 垃圾箱分布时间限制200 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越大家倒垃圾的时候,都希望垃圾箱距离自己比较近,但是谁都不愿意守着垃圾箱住。所以垃圾箱的位置必须选在到所有居民点的最短距离最长的

2017-03-19 09:34:00 582

原创 团体程序设计天梯赛-练习集 L3-008. 喊山 bfs 解题报告

L3-008. 喊山时间限制150 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越喊山,是人双手围在嘴边成喇叭状,对着远方高山发出“喂—喂喂—喂喂喂……”的呼唤。呼唤声通过空气的传递,回荡于深谷之间,传送到人们耳中

2017-03-18 21:39:09 459

原创 团体程序设计天梯赛-练习集 L3-001. 凑零钱 强行dfs+剪枝 解题报告

L3-001. 凑零钱时间限制200 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越韩梅梅喜欢满宇宙到处逛街。现在她逛到了一家火星店里,发现这家店有个特别的规矩:你可以用任何星球的硬币付钱,但是绝不找零,当然也不能

2017-03-18 20:36:19 654

原创 团体程序设计天梯赛-练习集 L2-012. 关于堆的判断 解题报告

L2-012. 关于堆的判断时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越将一系列给定数字顺序插入一个初始为空的小顶堆H[]。随后判断一系列相关命题是否为真。命题分下列几种:“x is

2017-03-18 17:29:10 438

原创 团体程序设计天梯赛-练习集 L2阶段 全部题解

L2-001. 紧急救援团体程序设计天梯赛-练习集 L2-001 紧急救援 dijkstra 解题报告 - 小夥的博客 - 博客频道 - CSDN.NET  http://blog.csdn.net/qq_21899803/article/details/51556236L2-002. 链表去重团体程序设计天梯赛-练习集 L2-002 链表去重 解题报告 - 小夥的博客

2017-03-18 15:15:32 2390

原创 团体程序设计天梯赛-练习集 L2-015. 互评成绩 解题报告

L2-015. 互评成绩时间限制250 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越学生互评作业的简单规则是这样定的:每个人的作业会被k个同学评审,得到k个成绩。系统需要去掉一个最高分和一个最低分,将剩下的分数取

2017-03-18 15:05:11 648

原创 团体程序设计天梯赛-练习集 L2-014. 列车调度 解题报告

L2-014. 列车调度时间限制300 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越火车站的列车调度铁轨的结构如下图所示。Figure两端分别是一条入口(Entrance)轨道和一条出口(Exit

2017-03-18 15:03:39 484

原创 团体程序设计天梯赛-练习集 L2-011. 玩转二叉树 解题报告

L2-011. 玩转二叉树时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越给定一棵二叉树的中序遍历和前序遍历,请你先将树做个镜面反转,再输出反转后的层序遍历的序列。所谓镜面反转,是指将所有非叶结点的左

2017-03-18 14:59:00 439

原创 团体程序设计天梯赛-练习集 L2-010. 排座位 解题报告

L2-010. 排座位时间限制150 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越布置宴席最微妙的事情,就是给前来参宴的各位宾客安排座位。无论如何,总不能把两个死对头排到同一张宴会桌旁!这个艰巨任务现在就交给你,

2017-03-18 14:57:14 715

原创 团体程序设计天梯赛-练习集 L2-009. 抢红包 解题报告

L2-009. 抢红包时间限制300 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越没有人没抢过红包吧…… 这里给出N个人之间互相发红包、抢红包的记录,请你统计一下他们抢红包的收获。输入格式:输入第

2017-03-18 14:56:01 436

原创 团体程序设计天梯赛-练习集 L2-008. 最长对称子串 解题报告

L2-008. 最长对称子串时间限制100 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越对给定的字符串,本题要求你输出最长对称子串的长度。例如,给定"Is PAT&TAP symmetric?",最长对称子串为"

2017-03-18 14:54:50 369

原创 团体程序设计天梯赛-练习集 L2-007. 家庭房产 解题报告

L2-007. 家庭房产时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越给定每个人的家庭成员和其自己名下的房产,请你统计出每个家庭的人口数、人均房产面积及房产套数。输入格式:输入第一行

2017-03-18 14:53:45 345

原创 团体程序设计天梯赛-练习集 L2-006. 树的遍历 解题报告

L2-006. 树的遍历时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越给定一棵二叉树的后序遍历和中序遍历,请你输出其层序遍历的序列。这里假设键值都是互不相等的正整数。输入格式:输入第

2017-03-18 14:51:51 380

原创 团体程序设计天梯赛-练习集 L2-005. 集合相似度 解题报告

L2-005. 集合相似度时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越给定两个整数集合,它们的相似度定义为:Nc/Nt*100%。其中Nc是两个集合都有的不相等整数的个数,Nt是两个集合一共有的不

2017-03-18 14:50:30 400

原创 团体程序设计天梯赛-练习集 L2-003. 月饼 贪心 解题报告

L2-003. 月饼时间限制100 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请

2017-03-18 14:46:35 674

原创 团体程序设计天梯赛-练习集 L2-013. 红色警报 解题报告

L2-013. 红色警报时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越战争中保持各个城市间的连通性非常重要。本题要求你编写一个报警程序,当失去一个城市导致国家被分裂为多个无法连通的区域时,就发出红色

2017-03-18 14:40:52 439

graphviz-2.38.msi(windows下python图形工具)

用于python中,某些图形的显示。Note: These Visual Studio packages do not alter the PATH variable or access the registry at all. If you wish to use the command-line interface to Graphviz or are using some other program that calls a Graphviz program, you will need to set the PATH variable yourself.

2019-03-01

C++程序设计(谭浩强)pdf+例题习题源码

c++程序设计 谭浩强 pdf版,包括例题和习题源代码。 c++程序设计 谭浩强 pdf版,包括例题和习题源代码。

2018-04-05

剑指offer第二版(PDF+源码)

剑指offer 第二版 PDF电子书 压缩包有随书代码 剑指offer 第二版 PDF电子书 压缩包有随书代码

2018-03-15

java山寨版qq源代码

用java写的山寨版qq,可以支持传文件,聊天,等等。

2015-01-10

空空如也

空空如也

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

TA关注的人 TA的粉丝

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