@TOC(第5章位操作相关《程序员面试金典》)前言本系列笔记主要记录笔者刷《程序员面试金典》算法的一些想法与经验总结,按专题分类,主要由两部分构成:经验值点和经典题目。其中重点放在经典题目上;0.经验总结0.1程序员面试金典P94位操作是优化代码的一种技巧;一些操作技巧:(1s和0s表示一串1和0)乘2:左移1位;异或^:同0异1;某数与111100做与&运算:将某数最后2位清零;异或与或x^0s
@TOC(第4章树与图相关《程序员面试金典》)前言本系列笔记主要记录笔者刷《程序员面试金典》算法的一些想法与经验总结,按专题分类,主要由两部分构成:经验值点和经典题目。其中重点放在经典题目上;本章有10题,标号到12,没有第7和第11题;0.经验总结0.1程序员面试金典P85树的基本组成单位是节点node,节点可以封装左右指针、父节点指针等;可以使用一个名为Tree的类来封装节点,但在面试中不常用
@TOC(第3章栈与队列相关《程序员面试金典》)前言本系列笔记主要记录笔者刷《程序员面试金典》算法的一些想法与经验总结,按专题分类,主要由两部分构成:经验值点和经典题目。其中重点放在经典题目上;0.经验总结0.1程序员面试金典P82栈后进先出(LIFO):栈无法在常数时间复杂度内访问第i个元素。但因为栈不需要在添加和删除时移动元素,可以在常数时间复杂度内完成此操作;对于递归算法:有时需要把临时变量
@TOC(第2章链表相关《程序员面试金典》)前言本系列笔记主要记录笔者刷《程序员面试金典》算法的一些想法与经验总结,按专题分类,主要由两部分构成:经验值点和经典题目。其中重点放在经典题目上;0.经验总结0.1程序员面试金典P79链表的特点:无法在常数时间复杂度内访问链表的特定元素;可以在参数事件复杂度内加入和删除元素;如果链表被多个对象引用,当链表头结点变了,可能会有一些对象仍然指向原头结点;解决
@TOC(数组与字符串相关算法笔记)前言本系列笔记主要记录笔者刷《程序员面试金典》算法的一些想法与经验总结,按专题分类,主要由两部分构成:经验值点和经典题目。其中重点放在经典题目上;0.经验总结0.1程序员面试金典P76数组问题与字符串问题往往是相通的;散列表是一种通过将键(key)映射为值(value)从而实现快速查找的数据结构;可变长度数组ArrayList插入N个元素总计用时为O(N),平均
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号