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

字典数Trie树详解及其应用

一、知识简介         最近在看字符串算法了,其中字典树、AC自动机和后缀树的应用是最广泛的了,下面将会重点介绍下这几个算法的应用。       字典树(Trie)可以保存一些字符串->值的对应关系。基本上,它跟 Java 的 HashMap 功能相同,都是 key-value 映...

2016-07-30 14:06:35

阅读数 697

评论数 0

【面试编程题】-9剑指offer之优化时间和空间效率

下面的例题来着剑指offer第5章的内容。很多公司的面试官都把代码的时间效率当做一个考叉重点。面试官除了考查应聘者的编程能力之外,还关注应聘者有没有不断优化效率、追求完美的态度和能力。 1.数组中出现次数超过一半的数字题目描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一...

2016-07-30 13:51:18

阅读数 1087

评论数 0

大数据处理常用的数据结构

随着互联网的兴起,越来越多的内容被放到互联网中,从而导致海量数据处理受到更多人的重视,尤其是在百度、腾讯等这些涉及海量数据的公司。下面我们简单谈一下关于海量数据处理的一些常用数据结构。包括哈希、bitmap、Bloom filter、堆、mapreduce、trie树。 (1)哈希   对于哈希...

2016-07-30 00:13:10

阅读数 5560

评论数 1

Bloom Filter 布隆过滤算法学习

BloomFilter——大规模数据处理利器     Bloom Filter是由Bloom在1970年提出的一种多哈希函数映射的快速查找算法。通常应用在一些需要快速判断某个元素是否属于集合,但是并不严格要求100%正确的场合。   一. 实例    为了说明Bloo...

2016-07-29 23:53:40

阅读数 973

评论数 0

字符串匹配KMP算法的理解(详细)

1. 引言 本KMP原文最初写于2年多前的2011年12月,因当时初次接触KMP,思路混乱导致写也写得混乱。所以一直想找机会重新写下KMP,但苦于一直以来对KMP的理解始终不够,故才迟迟没有修改本文。 然近期因开了个算法班,班上专门讲解数据结构、面试、算法,才再次仔细回顾了这个KMP,...

2016-06-20 13:09:33

阅读数 1773

评论数 2

动态规划算法解最长公共子序列LCS问题

第一部分、什么是动态规划算法      ok,咱们先来了解下什么是动态规划算法。     动态规划一般也只能应用于有最优子结构的问题。最优子结构的意思是局部最优解能决定全局最优解(对有些问题这个要求并不能完全满足,故有时需要引入一定的近似)。简单地说,问题能够分解成子问题来解决。 动态规划算...

2016-06-20 12:05:43

阅读数 2719

评论数 0

腾讯2017暑期实习生编程题

上次做了乐视的暑期实习生编程题:http://blog.csdn.net/chenchaofuck1/article/details/51700143 今天也做了腾讯的的实习生编程题,整体感觉要比乐视的题难一些,但也没有涉及非常难的算法,题如下:1.构造回文 给定一个字符串s,你可以从中...

2016-06-19 16:55:32

阅读数 3168

评论数 0

求最长公共子串的Needleman/Wunsch算法

文本比较算法Needleman/Wunsch算法   在“文本比较算法Ⅰ——LD算法”中介绍了基于编辑距离的文本比较算法——LD算法。   本文介绍基于最长公共子串的文本比较算法——Needleman/Wunsch算法。   还是以实例说明:字符串A=kitten,字符串B=sitt...

2016-06-18 21:36:41

阅读数 1336

评论数 0

乐视2017暑期实习生笔试编程题

前几天做了在乐视的笔试题,整体的来说的题目还是比较简单。前面的选择题都是比较普遍的一些关于操作系统、网络、linux等的题。后面有三道编程题得吐槽一下,虽然题不是很难,不涉及什么复杂的算法,但是题目介绍弄了一大堆的故事,看来几遍才弄懂了,特别是第一个题,少点套路就好了。 1.兵临城下卢卡斯的驱逐者...

2016-06-17 15:17:01

阅读数 3107

评论数 1

海量数据处理面试题方法总结

第一部分、十道海量数据处理面试题 1、海量日志数据,提取出某日访问百度次数最多的那个IP。       首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中。注意到IP是32位的,最多有个2^32个IP。同样可以采用映射的方法,比如模1000,把整个大文件映射为1000个小...

2016-06-09 18:45:52

阅读数 756

评论数 0

阿里面试题总结

在阿里面试之前总结了一下内推同学的面经,把面试题总结到一块,并进行了分类。有些题目我也总结了一下答案,大家可以参考一下,仅仅参考就行了,因为可能自己知识储备不够,答案整理不够完整(也可能会有错误的地方,希望大家指出。嘿~嘿~嘿~嘿~) 我面试的时候,自己总结的题竟然一个题都没问,并且问的题太深了...

2016-06-09 13:50:58

阅读数 1800

评论数 0

常用树类数据结构总结-二叉查找树(BST),平衡二叉查找树(AVL),红黑树(RBT),B~/B+树(B-tree)的性能分析

http://www.iteye.com/topic/614070 此少侠总结的特棒,直接收藏了。 我们这个专题介绍的动态查找树主要有: 二叉查找树(BST),平衡二叉查找树(AVL),红黑树(RBT),B~/B+树(B-tree)。这四种树都具备下面几个优势: (1) 都是...

2016-05-02 23:17:11

阅读数 1193

评论数 0

Java 二叉树的前序、中序、后续遍历 递归和迭代实现

1.前序 递归 public List<Integer> preorderTraversal(TreeNode root) { List<Integer> list=new ArrayList<...

2016-05-01 17:14:23

阅读数 831

评论数 0

leetcode 46,47. Permutations I/II 全排列问题 java

46.Permutations Total Accepted: 96713 Total Submissions: 271529 Difficulty: Medium Given a collection of distinct numbers, return all possible perm...

2016-04-19 23:00:36

阅读数 3105

评论数 1

两个整形数交换的算法,不使用其它变量

通常我们的做法是(尤其是在学习阶段):定义一个新的变量,借助它完成交换。代码如下: int a=10; b=15; int t; t=a; a=b; b=t; 这种算法易于理解,特别适合帮助初学者了解计算机程序的特点,是赋值语句的经典应用。在实际软件开发当中,此算法简单明了,不会产生...

2016-04-14 00:08:56

阅读数 1222

评论数 0

int转换成二进制字符串

1.位移运行      对于JAVA要想将整型转换成二进制数可以直接使用包装类的toBinaryString方法,如Integer.toBinaryString(int i),该方法利用的是位运算,JDK源码如下: public static String toBinaryString...

2016-03-26 18:29:41

阅读数 7007

评论数 0

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