茅坤宝骏氹的博客

写博客,纯粹自娱。转载文章来源网络,转载链接不一定是原文,如有侵权请联系删除...

最长回文子串(Longest Palindromic Substring)

转载自  最长回文子串(Longest Palindromic Substring)——三种时间复杂度的解法     子串:小于等于原字符串长度由原字符串中任意个连续字符组成的子序列     回文:关于中间字符对称的文法,即“aba”(单核)、“cabbac”(双核)等     最长回文子串...

2018-11-24 21:43:51

阅读数 37

评论数 0

10亿个数中找出最大的10000个数

转载自  海量数据处理 - 10亿个数中找出最大的10000个数(top K问题)        前两天面试3面学长问我的这个问题(想说TEG的3个面试学长都是好和蔼,希望能完成最后一面,各方面原因造成我无比想去鹅场的心已经按捺不住了),这个问题还是建立最小堆比较好一些。         先拿...

2018-11-24 21:38:43

阅读数 106

评论数 0

漫画:如何实现大整数相加

转载自  漫画:如何实现大整数相加         在程序中列出的 “竖式” 究竟是什么样子呢?我们以 426709752318 + 95481253129 为例,来看看大整数相加的详细步骤: 第一步,把整数倒序存储,整数的个位存于数组0下标位置,最高位存于数组长度...

2018-11-24 12:18:10

阅读数 33

评论数 0

漫画:删去k个数字后的最小值

转载自  漫画:删去k个数字后的最小值     我们来举一个栗子: 给定整数 541270936,要求删去一个数,让剩下的整数尽可能小。 此时,无论删除哪一个数字,最后的结果都是从9位整数变成8位整数。既然同样是8位整数,我们显然应该优先把高位的数字降低,这样对新整数的值影响最大。 ...

2018-11-18 11:01:17

阅读数 51

评论数 0

漫画:什么是时间复杂度

转载自    漫画:什么是时间复杂度 时间复杂度的意义 究竟什么是时间复杂度呢?让我们来想象一个场景: 某一天,小灰和大黄同时加入了一个公司......   一天过后,小灰和大黄各自交付了代码,两端代码实现的功能都差不多。 大黄的代码运行一次要花100毫秒,内存占用5MB。 小灰...

2018-09-27 19:10:04

阅读数 26

评论数 0

Java最小堆解决TopK问题

转载自  Java最小堆解决TopK问题 TopK问题是指从大量数据(源数据)中获取最大(或最小)的K个数据。 TopK问题是个很常见的问题:例如学校要从全校学生中找到成绩最高的500名学生,再例如某搜索引擎要统计每天的100条搜索次数最多的关键词。 对于这个问题,解决方法有很多: 方法一...

2018-06-18 07:25:22

阅读数 94

评论数 0

我猜,每个程序员对着电梯都想过调度算法吧

转载自 我猜,每个程序员对着电梯都想过调度算法吧   传统电梯调度算法 1.1 先来先服务算法(FCFS) 先来先服务(FCFS-First Come First Serve)算法,是一种随即服务算法,它不仅仅没有对寻找楼层进行优化,也没有实时性的特征,它是一种最简单的电梯调度算法。 它...

2018-05-06 14:33:50

阅读数 238

评论数 0

递归算法介绍及Java应用实战

转载自 递归算法介绍及Java应用实战 什么是递归算法 递归算法是把问题转化为规模缩小了的同类问题的子问题,然后递归调用函数(或过程)来表示问题的解。一个过程(或函数)直接或间接调用自己本身,这种过程(或函数)叫递归过程(或函数)。 递归过程一般通过函数或子过程来实现。递归方法:在函数或...

2018-04-24 11:16:57

阅读数 61

评论数 0

Java单链表反转

转载自   Java单链表反转 详细过程 (一)单链表的结点结构:        data域:存储数据元素信息的域称为数据域;      next域:存储直接后继位置的域称为指针域,它是存放结点的直接后继的地址(位置)的指针域(链域)。     data域+ next域:组成数据ai的存储...

2018-04-18 21:14:43

阅读数 2835

评论数 0

漫画算法:辗转相除法是什么鬼

转载自  玻璃猫 程序员小灰 大四毕业前夕,计算机学院的小灰又一次顶着炎炎烈日, 去某IT公司面试研发工程师岗位…… 半小时后,公司会议室,面试开始…… 小灰奋笔疾书,五分钟后…… 小灰的思路十分简单。他使用暴力枚举的方法,试图寻找到一个合适的整数 i,看看这个整数能否被两个整型参数...

2018-04-13 22:04:00

阅读数 53

评论数 0

漫画算法:找出缺失的整数

转载自 玻璃猫 程序员小灰   小灰一边回忆一边讲述起当时面试的情景...... 题目:一个无序数组里有99个不重复正整数,范围从1到100,唯独缺少一个整数。如何找出这个缺失的整数? 解法一: 创建一个HashMap,以1到100为键,值都是0 。然...

2018-04-13 21:55:36

阅读数 64

评论数 0

漫画算法:最小栈的实现

转载自 玻璃猫 程序员小灰                    小灰回忆起当时的情景……                  题目:实现一个栈,带有出栈(pop),入栈(push),取最小元素(getMin)三个方法。要保证这三个方法的时间复杂度都是O(1)。  ...

2018-04-13 21:49:57

阅读数 91

评论数 0

漫画算法:判断2的乘方

转载自 玻璃猫 程序员小灰     小灰陷入回忆当中。。。。    题目:实现一个方法,判断一个正整数是否是2的乘方(比如16是2的4次方,返回True;18不是2的乘方,返回False)。要求性能尽可能高。   解法一:  创建一个中间变量Temp,初始值是1。然后进入一个循环,循环中每次让T...

2018-04-13 21:47:21

阅读数 69

评论数 0

漫画算法:无序数组排序后的最大相邻差值

转载自 玻璃猫 程序员小灰 小灰一边回忆一边讲述起当时面试的情景...... 题目:有一个无序整型数组,如何求出这个数组排序后的任意两个相邻元素的最大差值?要求时间和空间复杂度尽可能低。(例如:无序数组 2,3,1,4,6,排序后是1,2,3,4,6,最大差值是6-...

2018-04-13 21:43:49

阅读数 72

评论数 0

漫画:什么是动态规划?(整合版)

转载自 玻璃猫 程序员小灰 ———————————— 题目: 有一座高度是10级台阶的楼梯,从下往上走,每跨一步只能向上1级或者2级台阶。要求用程序来求出一共有多少种走法。 比如,每次走1级台阶,一共走10步,这是其中一种走法。我们可以简写成 1,1,1,1,1...

2018-04-13 14:05:56

阅读数 183

评论数 0

漫画算法:如何判断链表有环

转载自  玻璃猫 程序员小灰 大四毕业前夕,计算机学院, 正在四处求职的小灰碰到了同系的学霸大黄…… 小灰边说边回忆着上周去面试的情形…… 有一个单向链表,链表当中有可能出现“环”,就像下图这样。如何用程序判断出这个链表是有环链表? 方法一:首先从...

2018-04-13 13:59:27

阅读数 71

评论数 0

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