学习的速度有些慢,脑袋转动的频率有些不是很高.不过今天的效率我觉得还是可以,应该不能称效率吧,就是整个感觉不错,感觉自己补充了很多的知识.其实G家和F家败了之后不知道看看算法题对接下来的找工作帮助是否会很大,但是看算法题目也是提高解决问题能力的一种方式吧,锻炼思维.僵化的思维实在有些不能忍受. 另外今天更是遇到之前leetcode之中的一些题目,当时那个题目第一时间没有思路,想了良久有了思路,有种灵机一动的感觉,今天碰到的时候竟然没有回想起来,即使自己的灵机一闪也无法依赖.那种灵机一动的时候人的…
1.判断是个二叉树是不是平衡二叉树. 二叉树的定义都是利用递归的方法,所以二叉树有着天然的递归属性.所以一般情况下,递归解决二叉树问题中,递归解法比较简洁.平衡二叉树的定义是左子树和右子树均是平衡二叉树,并且左子树和右子树的高度差不超过1,三个条件缺一不可. 根据递归的定义,递归实现起来需要返回子树的高度,又要返回子树是否平衡的属性,所以判断平衡二叉树的递归算法需要传会两个参数,所以把递归函数原型定义为int balancedTree(TreeNode* root, bool &isBalanc…
堆的应用范围也比较广泛,经常游走在各种面试题目之前,不论算法设计的题目还是海量数据处理的题目,经常能看到这种数据结构的身影.堆其实就是一个完全二叉树的结构,经常利用数组来实现.包含最大堆和最小堆两种.最大堆的性质:针对每个根节点,其节点值大于其后继节点.最小堆的性质:针对每个根节点,其节点值小于后继节点. 算法设计中堆数据结构一般直接利用STL中实现好的数据结构.其中针对堆数据结构的操作:插入和删除时间复杂度可记为O(lgn),返回最大值/最小值时间复杂度记为O(1).另外,这里的堆和内存分配中…
链表的题目总体来说细节比较多,因为链表的题目在操作链表的过程中本身有些复杂,所以如果链表作为编程题出现的时候,多数情况下题目本身的思路可能不是很复杂,不要把题目往复杂的方向去思考就好了~这里的链表只是说单向链表,双向链表,跳表.树的链表表示形式不属于这个链表的范畴. 1.合并两个有序的链表.额外空间要求O(1). 思路很明确的一个题目,三个指针. 2.如何判断一个链表中是否存在环?如果存在环,如何快速的找出环的起点位置. 这个题目只要见过一次就很难再忘记它的解题方法了,非常有技巧的一个方法.fa…
小插曲之变量和字符串 让编程改变世界 Change the world by program 变量 (此处只是省略N多细节,详细通过视频学习) 变量名就像我们现实社会的名字,把一个值赋值给一个名字时,Ta会存储在内存中,称之为变量(variable). 在大多数语言中,都把这种行为称为"给变量赋值"或"把值存储在变量中". 不过Python与大多数其他计算机语言的做法稍有不同,Ta并不是把值存储在变量中,而更像是把名字贴在值的上边. 所以有些Python程序员会说&…
Swift语法基础入门二(数组, 字典, 字符串) 数组(有序数据的集) *格式 : [] / Int / Array() let 不可变数组 var 可变数组 注意: 不需要改变集合的时候创建不可变集合是很好的实践.如此 Swift 编译器可以优化我们创建的集合. // 声明数组 let arr1: Array<Int> // 推荐 let arr2: [Int] arr2 = [10, 20] // 先定义再初始化 //arr2 = [30, 40] var arr3: [Double]…
字符串常量基础 在ES2015之前我们是这么拼接字符串的: var result = 10; var prefix = "the first double digit number I learnt was "; var assembled = prefix + result.toString(); console.log(assembled); // logs => 'the first double digit number I learnt was 10' 在ES2015我…
前言 Java基础知识-类,多态,Object,数组和字符串,回顾,继承,类的多态性,多态,向上转型和向下转型,Object,数组,多维数组,字符串,字符串比较. 回顾 类的定义格式: [类的修饰符] class 类的名称 [extends 父类名称][implements 接口名称列表] { 变量的定义以及变量的初始化: 方法的定义以及方法体: } 类的修饰符:public,abstract ,final等. private protected public default(缺省) 继承 继承…
无意中发现了一个非常有意思的技术类型小品文系列,通过大牛指导菜鸟的方式,解说讲C++知识,有的非常基础却是开发中easy忽略的地方. [Elminster的专栏] http://blog.csdn.net/Elminster/article/contents [Solmyr 的小品文系列之中的一个:字符串放在哪里? ] http://blog.csdn.net/elminster/article/details/9730 转帖至此,给出链接,原文就不贴了,总结并扩展一下方便以后回想. 字符数组(…
C语言基础知识-数组和字符串 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数组概述 在程序设计中,为了方便处理数据把具有相同类型的若干变量按有序形式组织起来的方式我们称为数组. 数组就是在内存中连续的相同类型的变量空间.同一个数组所有的成员都是相同的数据类型,同时所有的成员在内存中的地址是连续的. 数组属于构造函数类型: 一个数组可以分解为多个数组元素:这些数组元素可以是基于数据类型. 二.一维数组 1>.一维数组的定义  数组名称符合标识符的书写规定(数字,英文字母,…