LZH的笔记

人若无名,练剑十年

排序:
默认
按更新时间
按访问量

【二分查找】在排序数组中查找数字

排序数组里很多二分查找的题目,不能把排序这个性质浪费了。 面试题53-1:数字在排序数组中出现的次数 统计一个数字在排序数组中出现的次数。例如输入排序数组{1, 2, 3, 3, 3, 3, 4, 5}和数字3,由于3在这个数组中出现了4次,因此输出4。 二分查找第一个k和最后一个k,计算它们...

2018-10-19 20:46:54

阅读数:9

评论数:0

【归并排序,同步指针】数组中的逆序对,两个链表的第一个公共结点

面试题51:数组中的逆序对 在数组中的两个数字如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。 分成长度1的子数组,在合并之前统计相邻子数组之间的逆序对个数,然后让它们升序合并,升序的最大的一定在最后面,然后再如此反复即可。具体图解见书上...

2018-10-19 19:20:33

阅读数:8

评论数:0

【打表】第一个只出现一次的字符与字符流内实现

面试题50:第一个只出现一次的字符 在字符串中找出第一个只出现一次的字符。如输入"abaccdeff",则输出’b’。 输入一共就256种ASCII字符,第一遍扫描把出现次数记到数组里,第二遍边扫描边到数组里去找。 #include<b...

2018-10-19 16:24:16

阅读数:24

评论数:0

【DP,打表】最长不含重复字符的子字符串,丑数

面试题48:最长不含重复字符的子字符串 请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。假设字符串中只包含从’a’到’z’的字符。 用f(i)表示以i位置字符结尾的最长不含重复字符的子字符串的长度,则所求的就是i从0~n-1中最大的一个f(i)。 在遍历数组时,记...

2018-10-19 14:52:02

阅读数:22

评论数:0

【Linux学习笔记】45:VMware中CentOS7配置桥接模式/仅主机模式/NAT模式

关于三种模式的辨析见实例讲解虚拟机3种网络模式(桥接、nat、Host-only),本文主要记录配置方式。 桥接模式 宿主机上ipconfig /all查看网络和适配器信息: 在VMware中修改要桥接到的适配器: 在虚拟机中ifconfig查看网卡名称,我这里是ens33。然...

2018-10-16 14:11:50

阅读数:34

评论数:0

【Tensorflow学习笔记】1:注解MNIST手写数字分类

跟着官方文档敲了MNIST手写数字识别的两个TF程序,没接触之前还以为底层计算也是使用的Python,原来Python只是用来描述计算图和何时计算的。 虽然Tensor翻译过来就是张量,但目前还是不理解它和我们认知的张量有什么关系,暂且理解成一个数据容器,可以存储多维的数据,还有一些TF中特殊的操...

2018-10-08 21:03:57

阅读数:30

评论数:0

【python学习笔记】34:函数参数、闭包、lambda函数、装饰器、偏函数

函数参数 位置参数 一般写的函数调用按顺序传入参数,这种参数就是位置参数,即通过位置来知道这个参数是传给哪个参数的。 pow(x,n) 默认参数 即为参数设定默认值,具有默认值的参数可以不传入,所以必选参数在前,默认参数在后。廖老师提到"变化大的参数...

2018-10-05 14:18:56

阅读数:19

评论数:0

【python学习笔记】33:生成器、迭代器、高阶函数

生成器 生成器(generator)相比列表推导式,只占用很小的空间,因为它是一边循环一边推算,通过next()调用下一元素,并在结束时抛出StopIteration异常,在语法上只要把[]换成()即可。 a = (i * i for i in range(10)) print(a) # 生成器...

2018-10-04 11:51:36

阅读数:24

评论数:0

【DP】礼物的最大价值

面试题47:礼物的最大价值 在一个m×n的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向左或者向下移动一格直到到达棋盘的右下角。给定一个棋盘及其上面的礼物,请计算你最多能拿到多少价值的礼物? 之前Pytho...

2018-09-28 21:47:59

阅读数:22

评论数:0

【DP】把数字翻译成字符串

面试题46:把数字翻译成字符串 给定一个数字,我们按照如下规则把它翻译为字符串:0翻译成”a”,1翻译成”b”,……,11翻译成”l”,……,25翻译成”z”。一个数字可能有多个翻译。例如12258有5种不同的翻译,它们分别是”bccfi”、”bwfi”、”bczi”、”mcfi”和”mz...

2018-09-13 20:40:20

阅读数:52

评论数:0

【算法】数字序列中某一位的数字,把数组排成最小的数

面试题44:数字序列中某一位的数字 数字以0123456789101112131415…的格式序列化到一个字符序列中。在这个序列中,第5位(从0开始计数)是5,第13位是1,第19位是4,等等。请写一个函数求任意位对应的数字。 每次跳过一片数字海,每个数字海都是位数一样的数字组成的,这...

2018-09-13 20:08:40

阅读数:23

评论数:0

【递归】从1到n整数中1出现的次数

面试题43:从1到n整数中1出现的次数 输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数。例如输入12,从1到12这些整数中包含1 的数字有1,10,11和12,1一共出现了5次。 给定一个数字,如1~21345,可以从最高位拆开分成1~1345和1346~21345这两...

2018-09-13 16:01:14

阅读数:40

评论数:0

【DP】连续子数组的最大和

面试题42:连续子数组的最大和 输入一个整型数组,数组里有正数也有负数。数组中一个或连续的多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为O(n)。 ...

2018-09-12 09:54:35

阅读数:30

评论数:0

【大小堆】数据流中的中位数

面试题41:数据流中的中位数 如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。 书上214~216页的分析非常精彩,感觉再总结些什么都是东施效颦了。...

2018-09-11 21:19:31

阅读数:36

评论数:0

【算法】最小的k个数

面试题40:最小的k个数 输入n个整数,找出其中最小的k个数。例如输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。 解法1 还是用Partition函数,存在这样的划分,正好取到第k小的数字为基准数,能够使比其小的数字都在其左边,就找到了最小的k个数。...

2018-09-11 20:05:34

阅读数:35

评论数:0

【算法】数组中出现次数超过一半的数字

面试题39:数组中超过一半的数字 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1, 2, 3, 2, 2, 2, 5, 4, 2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。 解法1 数字超出一半,随机选中该数字的概率...

2018-09-11 19:11:27

阅读数:28

评论数:0

【分治法】字符串的排列与其变式题

面试题38:字符串的排列 输入一个字符串,打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a、b、c所能排列出来的所有字符串abc、acb、bac、bca、cab和cba。 把第一个字符和后面所有字符交换,则第一个位置可以出现所有种字符。其中又将该字符固定,重复这个...

2018-09-11 14:41:22

阅读数:19

评论数:0

【DLR】序列化二叉树

面试题37:序列化二叉树 请实现两个函数,分别用来序列化和反序列化二叉树。 前序、中序、后序三种遍历,任意一个都不能唯一确定一颗二叉树。可以用中序遍历序列和另外两个里的任意一个来确定(用前和后不能唯一确定),但是这样也必须要所有数据都读出来。 如果序列化从根开始,那么反序列化在根节点...

2018-09-11 10:17:58

阅读数:42

评论数:0

【LDR】BST转双向链表

这题书上讲的思路很清楚,不过代码里细节太多了。理解完感觉还是和书上讲的有差距的。 面试题36:二叉搜索树转排序双向链表 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 中序遍历BST,就是从小到大遍历BST的每个结点...

2018-09-10 15:14:55

阅读数:25

评论数:0

【复杂链表】复杂链表的复制

面试题35:复杂链表的复制 书上有图,不再画了。 请实现函数ComplexListNode* Clone(ComplexListNode* pHead),复制一个复杂链表。在复杂链表中,每个结点除了有一个m_pNext指针指向下一个结点外,还有一个m_pSibling 指向链表中的任意结...

2018-09-10 13:18:53

阅读数:47

评论数:0

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