
算法
lrx之成长记录
这个作者很懒,什么都没留下…
展开
-
程序员必知8大排序3大查找
每天都在叫嚣自己会什么技术,什么框架,可否意识到你每天都在被这些新名词、新技术所迷惑,.NET、XML等等技术固然诱人,可是如果自己的基础不扎实,就像是在云里雾里行走一样,只能看到眼前,不能看到更远的地方。这些新鲜的技术掩盖了许多底层的原理,要想真正的学习技术还是走下云端,扎扎实实的把基础知识学好,有了这些基础,要掌握那些新技术也就很容易了。 要编写出优秀的代码同样要扎实的基础,如果排序和转载 2012-07-09 14:41:44 · 512 阅读 · 0 评论 -
苹果面试题
导读:苹果这样的公司通常会在面试过程中向求职者抛出一些逻辑的问题来考研面试者,所以,如果你对进入苹果感兴趣,或者向往类似的公司,又或者只是对逻辑问题感兴趣,这些面试难题值得你仔细研究。问题一:“你面前有两扇门,其中一扇门内藏着宝藏,但如果你不小心闯入另一扇门,只能痛苦地慢慢死掉……”这一听就是那种经典的最令人头痛的一类问题,但其实与其他问题相比,这只是个热身。在这两扇门后面,有两个转载 2012-07-09 15:44:34 · 490 阅读 · 0 评论 -
常用数据结构简析
1. 数组(Array)数组最大的特点是预先要知道数组长度, 长度不可变,通过索引访问效率很高,因为是直接算出内存地址去读的。2. 列表(List)列表可以看作是数组的延伸, 最大的不一样是长度可变,列表按照结构来分一般分为两种: i) ArrayList这是基于数组实现的列表, 内部存储用的就是数组, 当当前数组长度不够的时候重新分配一个大一点原创 2013-03-08 16:59:31 · 955 阅读 · 0 评论 -
10大算法概念汇总(C+Java)
以下是在编程面试中排名前10的算法相关的概念,我会通过一些简单的例子来阐述这些概念。由于完全掌握这些概念需要更多的努力,因此这份列表只是作为一个介绍。本文将从Java的角度看问题,包含下面的这些概念:1. 字符串2. 链表3. 树4. 图5. 排序6. 递归 vs. 迭代7. 动态规划8. 位操作9. 概率问题10. 排列组合1. 字符串如果原创 2013-12-04 10:35:38 · 848 阅读 · 0 评论 -
堆排序
前言 堆排序、快速排序、归并排序(下篇会写这两种排序算法)的平均时间复杂度都为O(n*logn)。要弄清楚堆排序,就要先了解下二叉堆这种数据结构。本文不打算完全讲述二叉堆的所有操作,而是着重讲述堆排序中要用到的操作。比如我们建堆的时候可以采用堆的插入操作(将元素插入到适当的位置,使新的序列仍符合堆的定义)将元素一个一个地插入到堆中,但其实我们完全没必要这么做,我们有执行操作更少的方法,后转载 2014-03-07 15:49:20 · 907 阅读 · 0 评论