自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (7)
  • 收藏
  • 关注

原创 Leetcode 856 Score of Parentheses

题目描述:解题思路:看到这些括号匹配首先想到用栈,看到‘(’压栈并将factor因子加1 看到‘)’将栈顶'('弹栈,并将因子减1,如果和栈顶元素下标距离为1,则累加到结果中 只有相邻的'('和')'才会对res产生影响代码如下(c++)版本:class Solution {public: int scoreOfParentheses(string S) { deq...

2019-03-04 10:45:37 209

原创 Leetcode 975 Odd Even Jump

思路:从后往前递推 分配两个数组,odd和even数组,odd【i】表示在nums【i】上奇数此跳是否能够成功,同理even数组,初始时odd【len-1】=even【len-1】= true 第奇数跳要求找到A【j】>=A【i】的最小A【j】,偶数此跳要求找到找到A【j】<=A【i】的最大A【i】 最后统计出odd【i】中为true的个数初始代码(c++) 超时...

2019-03-03 11:15:19 266

原创 Leetcode 946 Validate Stack Sequence

题目描述:思路:用栈模拟pushed,用cur标记popped,如果当前栈顶元素等于popped[cur],则弹栈,否则继续压栈,最后检查栈是否为空代码如下(c++):class Solution {public: bool validateStackSequences(vector<int>& pushed, vector<int>&...

2019-03-02 10:38:52 138

原创 Leetcode 341 Flatten Nested List Iterator

题目描述:代码如下(c++)版本:class NestedIterator {public: queue<int>st; NestedIterator(vector<NestedInteger> &nestedList) { init(nestedList); } void init(vector&l...

2019-03-01 12:16:07 114

原创 Leetcode 173 Binary Search Tree iterator

题目描述类似于通过栈实现二叉查找树的中序遍历,将其转换为链表,将每个树节点的left指针当做next的使用。代码如下:class BSTIterator {public: TreeNode* head; BSTIterator(TreeNode* root) { bool first = false; deque<TreeNode*> stack; he...

2019-02-28 13:36:19 106

原创 Leetcode 145 Binary Tree Postorder Traversal

题目描述:这题紧接着144题,二叉树后序遍历的非递归思路:利用前一个访问的元素和当前栈顶元素的关系,如果是当前栈顶元素的左儿子或者右儿子为前一个访问的元素,则表示当前元素的左右子树均被访问过了,否则将当前节点左右子树压栈代码如下(c++)版本:class Solution {public: vector<int> postorderTraversal(Tree...

2019-02-27 16:22:42 102

原创 Leetcode 144 Binary Tree PreOrder Traversal

题目描述:要求使用非递归实现:代码如下(C++版本)class Solution {public: vector<int> preorderTraversal(TreeNode* root) { vector<int> res; deque<TreeNode*> stack; if (root == NULL) retur...

2019-02-26 23:24:03 83

原创 Leetcode 331 Verify PreOrder Serialization of a Binary Tree

题目描述:首先第一步必须得将原序列化字符串按照","拆分成字符串数组。由于C++标准库没有自带的split函数,必须自己手写。直接搬用博客上的实现:http://www.cnblogs.com/lyf-sunicey/p/8489472.html二、用STL进行字符串的分割涉及到string类的两个函数find和substr:1、find函数原型:size_t find ( c...

2019-02-25 17:03:18 92

原创 Leetcode 739 Daily Temperatures

题目描述:此题同样被归类于栈标签下,解题思路,使用递减栈,如果当前温度值大于栈定温度,弹栈,二者间隔天数为栈顶元素需要的回温天数。如果当前温度低于栈顶温度,则压栈。代码如下(C++):class Solution {public: vector<int> dailyTemperatures(vector<int>& T) { vector&...

2019-02-24 12:03:11 88

原创 Leetcode 726 Number of Atoms

第726题被归类于栈下,主要难点在于括号的处理,我采取的思路是将左括号压栈,然后遇到右括号弹如临时栈,在从临时栈弹回来,弹回来时乘以右括号下的系数。代码如下(C++)class Solution {public: string countOfAtoms(string formula) { deque<string> atoms; deque<int&gt...

2019-02-23 16:54:20 224

原创 Leetcode 921 Minimum Add to Make Parentheses Valid

Leetcode 921 Minimum Add to Make Parentheses Valid我的解法:本题归类于栈标签下,所以用栈来解决,如果")"和栈顶的"("可以相互匹配,将栈顶元素弹出,否则压栈,最后栈中元素个数即为所求。代码如下(C++):class Solution {public: int minAddToMakeValid(string S) { if ...

2019-02-22 19:30:17 118

转载 extern "C"

转载自:https://www.cnblogs.com/carsonzhu/p/5272271.htmlextern "C"的主要作用就是为了能够正确实现C++代码调用其他C语言代码。加上extern "C"后,会指示编译器这部分代码按C语言的进行编译,而不是C++的。由于C++支持函数重载,因此编译器编译函数的过程中会将函数的参数类型也加到编译后的代码中,而不仅仅是函数名;而C语言并不支持函...

2018-08-08 10:02:00 68

转载 C++隐式转换的原则

转载自:https://www.cnblogs.com/solidblog/p/3381628.htmlC++隐式转换的原则基本数据类型 基本数据类型的转换以取值范围的作为转换基础(保证精度不丢失)。 隐式转换发生在从小->大的转换中。比如从char转换为int。 从int-》long。  自定义对象 子类对象可以隐式的转换为父类对象。参考:http://develope...

2018-07-28 20:46:02 1067

转载 c++ 四种强制类型转换

转载自:https://blog.csdn.net/ydar95/article/details/69822540const_cast , static_cast , dynamic_cast , reinterpret_cast1. C风格的强制转换C风格的强制转换(Type Cast)容易理解,不管什么类型的转换都可以使用使用下面的方式. TypeName b = (Type...

2018-07-27 20:11:37 56122 1

转载 C++内存分配

转载自https://blog.csdn.net/Mary19920410/article/details/69053361C++内存分配在c中分为这几个存储区:栈区( stack )    由编译器自动分配释放 ,存放为运行函数而分配的局部变量、函数参数、返回数据、返回地址等。其操作方式类似于数据结构中的栈。 堆区( heap )     一般由程序员分配释放, 若程序员不释放,程...

2018-07-26 21:05:55 100

转载 leetcode 28 Implement strStr()

Rolling hash基本思想是用一个hashcode来表示一个字符串,为了保证hash的唯一性,我们用比字符集大的素数为底,以这个素数的幂为基。举例来说,字符集是小写字母集,取素数29为底。比如字符串“abacd",转化为hashcode=1+2*29+1*29^2+3*29^3+4*29^4。然后是如何在前进一步的时候计算新的hashcode,比如匹配串是原串是”abacde“,匹配串长度为

2017-08-13 19:50:00 124

转载 leetcode 10 Regular Expression Matching

文章转载自:http://www.cnblogs.com/grandyang/p/4461713.html[LeetCode] Regular Expression Matching 正则表达式匹配 Implement regular expression matching with support for '.' and '*'.'.' Matches

2017-07-18 21:32:57 291

转载 letcode 9 Palindrome Number

文章转载自:http://www.cnblogs.com/grandyang/p/4125510.html[LeetCode] Palindrome Number 验证回文数字 Determine whether an integer is a palindrome. Do this without extra space.click to show

2017-07-18 08:29:03 278

转载 leetcode 8 String to Integer (atoi)

文章转载自:http://www.cnblogs.com/grandyang/p/4125537.html[LeetCode] String to Integer (atoi) 字符串转为整数 Implement atoi to convert a string to an integer.Hint: Carefully consider all pos

2017-07-17 16:59:38 283

转载 leetcode 7 Reverse Integer

文章转载自:http://www.cnblogs.com/grandyang/p/4125588.htmlReverse digits of an integer.Example1: x = 123, return 321Example2: x = -123, return -321click to show spoilers.Have you thought ab

2017-07-17 10:47:53 146

转载 letcoode 6 ZigZag Conversion

文章转载自:http://www.cnblogs.com/sanghai/p/3632528.htmlZigZag ConversionZigzag:即循环对角线结构(0   8   16   1  79  1517   2 6 10

2017-07-16 19:53:56 249

转载 leetcode 5 Longest Palindromic Substring(2)

转载自:http://www.cnblogs.com/bitzhuwei/p/Longest-Palindromic-Substring-Part-II.html[译+改]最长回文子串(Longest Palindromic Substring) Part II阅读目录(Content)提示一个O(N)的算法(Manacher)注意看的更远[

2017-07-15 21:48:21 187

转载 leetcode 5 Longest Palindromic Substring(1)

转载自:http://www.cnblogs.com/bitzhuwei/p/Longest-Palindromic-Substring-Par-I.html阅读目录(Content)提示一个常见的错误暴力穷举法O(N3)动态规划法O(N2)时间O(N2)空间更简单的算法O(N2)时间O(1)空间提问O(N)[译]最长回文子串(Longest Palindromic S

2017-07-15 21:46:04 129

转载 KMP算法

文章转载:http://blog.csdn.net/joylnwang/article/details/6778316/KMP算法,是由Knuth,Morris,Pratt共同提出的模式匹配算法,其对于任何模式和目标序列,都可以在线性时间内完成匹配查找,而不会发生退化,是一个非常优秀的模式匹配算法。但是相较于其他模式匹配算法,该算法晦涩难懂,第一次接触该算法的读者往往会看得一头雾水,主要原

2017-07-11 10:53:21 149

转载 leetcode 04 Median of Two Sorted Arrays

这道题让我们求两个有序数组的中位数,而且限制了时间复杂度为O(log (m+n)),看到这个时间复杂度,自然而然的想到了应该使用二分查找法来求解。但是这道题被定义为Hard也是有其原因的,难就难在要在两个未合并的有序数组之间使用二分法,这里我们需要定义一个函数来找到第K个元素,由于两个数组长度之和的奇偶不确定,因此需要分情况来讨论,对于奇数的情况,直接找到最中间的数即可,偶数的话需要求最中间两个数

2017-07-10 09:47:39 219

转载 C++输出格式

一:标准输入函数cin不知道说它是个函数对还是不对,它是代表标准的输入设备--键盘。他是属于流的,他的用法和流的用法是一样的。也就是:cin>>变量;小小的说明一下,输入多个变量可以写在一行,如:cin>>x>>y>>z;这样写不是不允许,而是不好看,如果是不同的变量类型,那就更是没头没脑了。除了你,人家是不知道该输入什么的,所以,一般在输入语句的前面,我们一般都要做一个提示,

2015-10-07 19:16:11 139

jos操作系统

北大操作系统实验课,包括讲义资料和相应的程序,学习以后对操作系统有很深刻的了解

2018-03-16

博览网视频

博览网视频 侯捷c++新特性 STL源码分析 陈硕网络编程 c++设计模式等等

2018-03-16

程序员的数学

编程的基础是计算机科学,而计算机科学的基础是数学。因此,学习数学有助于巩固编程的基础,写出更健壮的程序。 本书面向程序员介绍了编程中常用的数学知识,借以培养初级程序员的数学思维。读者无需精通编程,也无需精通数学,只需具备四则运算和乘方等基础知识,就可以阅读本书。[1] 书中讲解了二进制计数法、逻辑、余数、排列组合、递归、指数爆炸、不可解问题等许多与编程密切相关的数学方法,分析了哥尼斯堡七桥问题、少年高斯求和方法、汉诺塔、斐波那契数列等经典问题和算法。引导读者深入理解编程中的数学方法和思路。[1] 本书还对程序员和计算机的分工进行了有益的探讨。读完此书,你会对以程序为媒介的人机合作有更深刻的理解。

2014-08-30

计算机组成与设计硬件软件接口

《计算机组成与设计硬件:软件接口》(原书第3版)是计算机组成的经典教材。全书着眼于当前计算机设计中最基本的概念,展示了软硬件间的关系,并全面介绍当代计算机系统发展的主流技术和最新成就。同以往版本一样,《计算机组成与设计硬件:软件接口》(原书第3版)采用MIPS处理器作为展示计算机硬件技术基本功能的核心。书中逐条指令地列举了完整的MIPS指令集,并介绍了网络和多处理器结构的基本内容。将CPU性能和程序性能紧密地联系起来是本版的一个新增内容。另外,本版对软硬件的讨论更加深入,作者展示了软硬件部件如何影响程序的性能,并在光盘中为侧重硬件和侧重软件的读者分别提供了相关资料。随书光盘内容非常丰富,不仅包括各种配套教学资源,还提供了HDL模拟器、MIPS模拟器以及FPGA设计工具等软件。

2014-08-30

计算机程序的构造和解释

计算机程序的构造和解释

2014-08-30

自动机理论、语言和计算导引

是计算理论领域的经典著作,被国外多所大学选用用为教材。本书以注重思路、深入引导为特色,系统地介绍计算机理论的三大主要内容:自动机与语言、可计算性理论和计算复杂性理论。同时,对可计算性和计算复杂理论中的某些高级内容作了重点讲解。全书通过启发性的问题、精彩的结果和待解决问题来引导读者挑战此领域中的高层次问题。新版的一大亮点是增加了更多习题、教辅资料和部分习题解答,更加有利于教学。

2014-08-29

空空如也

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

TA关注的人

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