-
>
決戰(zhàn)行測(cè)5000題(言語理解與表達(dá))
-
>
軟件性能測(cè)試.分析與調(diào)優(yōu)實(shí)踐之路
-
>
第一行代碼Android
-
>
深度學(xué)習(xí)
-
>
Unreal Engine 4藍(lán)圖完全學(xué)習(xí)教程
-
>
深入理解計(jì)算機(jī)系統(tǒng)-原書第3版
-
>
Word/Excel PPT 2013辦公應(yīng)用從入門到精通-(附贈(zèng)1DVD.含語音視頻教學(xué)+辦公模板+PDF電子書)
程序員代碼面試指南:IT名企算法與數(shù)據(jù)結(jié)構(gòu)題目最優(yōu)解(第2版) 版權(quán)信息
- ISBN:9787121354861
- 條形碼:9787121354861 ; 978-7-121-35486-1
- 裝幀:簡(jiǎn)裝本
- 冊(cè)數(shù):暫無
- 重量:暫無
- 所屬分類:>
程序員代碼面試指南:IT名企算法與數(shù)據(jù)結(jié)構(gòu)題目最優(yōu)解(第2版) 本書特色
適讀人群 :在讀學(xué)生中,對(duì)算法和數(shù)據(jù)結(jié)構(gòu)內(nèi)容有興趣的群體; 想要從事編程方向相關(guān)工作國(guó)內(nèi)的本科生、研究生; 想要出國(guó)留學(xué),并有計(jì)劃畢業(yè)后在國(guó)外找工作,從事編程方向相關(guān)工作的留學(xué)生; 已經(jīng)工作,但是對(duì)算法和數(shù)據(jù)結(jié)構(gòu)有學(xué)習(xí)興趣的程序員。
如何在IT名企的面試中脫穎而出、一舉成名?這本書就是你應(yīng)該擁有的“神兵利器”!八ⅰ蓖瓯緯,你就是“題王”!
對(duì)于每一個(gè)程序員來說,提升算法和數(shù)據(jù)結(jié)構(gòu)等方面的能力至關(guān)重要。無數(shù)碼農(nóng)和編程愛好者“深陷”題海之中,無論你是為了代碼面試、提升能力而不情愿地刷題,還是愛好所致沉迷于此,這都是你值得擁有的案頭書。
這里有你在別處找不到的至優(yōu)解分析,有高頻出現(xiàn)在IT名氣代碼面試中的真題,有讓人拍案驚嘆巧妙的題目解法,也有讓你工作中的編程難題迎刃而解的啟發(fā)……
第2版說明:
1.修改了第1版部分題目的解釋,并增加了更多示例。
2.增加了很多新出現(xiàn)的流行面試題,刪掉了已經(jīng)過時(shí)的低頻面試題。
3.針對(duì)解題套路與算法原型做了結(jié)構(gòu)化的調(diào)整和總結(jié)。
程序員代碼面試指南:IT名企算法與數(shù)據(jù)結(jié)構(gòu)題目最優(yōu)解(第2版) 內(nèi)容簡(jiǎn)介
《程序員代碼面試指南:IT名企算法與數(shù)據(jù)結(jié)構(gòu)題目很優(yōu)解(第2版)》是一本程序員代碼面試"神書”!書中對(duì)IT名企代碼面試各類題目的很優(yōu)解進(jìn)行了總結(jié),并提供了相關(guān)代碼實(shí)現(xiàn)。針對(duì)當(dāng)前程序員面試缺乏很好不錯(cuò)題目匯總這一痛點(diǎn),本書選取將近300道真實(shí)出現(xiàn)過的經(jīng)典代碼面試題,幫助廣大程序員的面試準(zhǔn)備做到接近萬無一失。"刷”完本書后,你就是"題王”!《程序員代碼面試指南:IT名企算法與數(shù)據(jù)結(jié)構(gòu)題目很優(yōu)解(第2版)》采用題目解答的方式組織內(nèi)容,并把面試題類型相近或者解法相近的題目盡量放在一起,讀者在學(xué)習(xí)本書時(shí)很容易看出面試題解法之間的聯(lián)系,使知識(shí)的學(xué)習(xí)避免碎片化。書中將所有的面試題從難到易依次分為"將”“!薄拔尽薄笆俊彼膫(gè)檔次,方便讀者有針對(duì)性地選擇"刷”題。本書所收錄的所有面試題都給出了很優(yōu)解講解和代碼實(shí)現(xiàn),并且提供了一些普通解法和很優(yōu)解法的運(yùn)行時(shí)間對(duì)比,讓讀者真切地感受到很優(yōu)解的魅力!《程序員代碼面試指南:IT名企算法與數(shù)據(jù)結(jié)構(gòu)題目很優(yōu)解(第2版)》中的題目全面且經(jīng)典,更重要的是,書中收錄了大量新題和很優(yōu)解分析,這些內(nèi)容源自筆者多年來"死磕自己”的深入思考。程序員們做好準(zhǔn)備在IT名企的面試中脫穎而出、一舉成名了嗎?這本書就是你應(yīng)該擁有的"神兵利器”。當(dāng)然,對(duì)需要提升算法和數(shù)據(jù)結(jié)構(gòu)等方面能力的程序員而言,《程序員代碼面試指南:IT名企算法與數(shù)據(jù)結(jié)構(gòu)題目很優(yōu)解(第2版)》的價(jià)值也是顯而易見的。
程序員代碼面試指南:IT名企算法與數(shù)據(jù)結(jié)構(gòu)題目最優(yōu)解(第2版) 目錄
【目錄】
第1章 棧和隊(duì)列
└ 設(shè)計(jì)一個(gè)有g(shù)etMin功能的棧
└ 由兩個(gè)棧組成的隊(duì)列
└ 如何僅用遞歸函數(shù)和棧操作逆序一個(gè)棧
└ 貓狗隊(duì)列
└ 用一個(gè)棧實(shí)現(xiàn)另一個(gè)棧的排序
└ 用棧來求解漢諾塔問題
└ 生成窗口*大值數(shù)組
└ 單調(diào)棧結(jié)構(gòu)
└ 求*大子矩陣的大小
└ *大值減去*小值小于或等于num的子數(shù)組數(shù)量
第2章 鏈表問題
└ 可見的山峰對(duì)數(shù)量
└ 打印兩個(gè)有序鏈表的公共部分
└ 在單鏈表和雙鏈表中刪除倒數(shù)第K個(gè)節(jié)點(diǎn)
└ 刪除鏈表的中間節(jié)點(diǎn)和a/b處的節(jié)點(diǎn)
└ 反轉(zhuǎn)單向和雙向鏈表
└ 反轉(zhuǎn)部分單向鏈表
└ 環(huán)形單鏈表的約瑟夫問題
└ 判斷一個(gè)鏈表是否為回文結(jié)構(gòu)
└ 將單向鏈表按某值劃分成左邊小、中間相等、右邊大的形式
└ 復(fù)制含有隨機(jī)指針節(jié)點(diǎn)的鏈表
└ 兩個(gè)單鏈表生成相加鏈表
└ 兩個(gè)單鏈表相交的一系列問題
└ 將單鏈表的每K個(gè)節(jié)點(diǎn)之間逆序
└ 刪除無序單鏈表中值重復(fù)出現(xiàn)的節(jié)點(diǎn)
└ 在單鏈表中刪除指定值的節(jié)點(diǎn)
└ 將搜索二叉樹轉(zhuǎn)換成雙向鏈表
└ 單鏈表的選擇排序
└ 一種怪異的節(jié)點(diǎn)刪除方式
└ 向有序的環(huán)形單鏈表中插入新節(jié)點(diǎn)
└ 合并兩個(gè)有序的單鏈表
└ 按照左右半?yún)^(qū)的方式重新組合單鏈表
第3章 二叉樹問題
└ 分別用遞歸和非遞歸方式實(shí)現(xiàn)二叉樹先序、中序和后序遍歷
└ 打印二叉樹的邊界節(jié)點(diǎn)
└ 如何較為直觀地打印二叉樹
└ 二叉樹的序列化和反序列化
└ 遍歷二叉樹的神級(jí)方法
└ 在二叉樹中找到累加和為指定值的*長(zhǎng)路徑長(zhǎng)度
└ 找到二叉樹中的*大搜索二叉子樹
└ 找到二叉樹中符合搜索二叉樹條件的*大拓?fù)浣Y(jié)構(gòu)
└ 二叉樹的按層打印與ZigZag打印
└ 調(diào)整搜索二叉樹中兩個(gè)錯(cuò)誤的節(jié)點(diǎn)
└ 判斷t1樹是否包含t2樹全部的拓?fù)浣Y(jié)構(gòu)
└ 判斷t1樹中是否有與t2樹拓?fù)浣Y(jié)構(gòu)完全相同的子樹
└ 判斷二叉樹是否為平衡二叉樹
└ 根據(jù)后序數(shù)組重建搜索二叉樹
└ 判斷一棵二叉樹是否為搜索二叉樹和完全二叉樹
└ 通過有序數(shù)組生成平衡搜索二叉樹
└ 在二叉樹中找到一個(gè)節(jié)點(diǎn)的后繼節(jié)點(diǎn)
└ 在二叉樹中找到兩個(gè)節(jié)點(diǎn)的*近公共祖先
└ Tarjan算法與并查集解決二叉樹節(jié)點(diǎn)間*近公共祖先的批量查詢問題
└ 二叉樹節(jié)點(diǎn)間的*大距離問題
└ 派對(duì)的*大快樂值
└ 通過先序和中序數(shù)組生成后序數(shù)組
└ 統(tǒng)計(jì)和生成所有不同的二叉樹
└ 統(tǒng)計(jì)完全二叉樹的節(jié)點(diǎn)數(shù)
第4章 遞歸和動(dòng)態(tài)規(guī)劃
└ 斐波那契數(shù)列問題的遞歸和動(dòng)態(tài)規(guī)劃
└ 矩陣的*小路徑和
└ 換錢的*少貨幣數(shù)
└ 機(jī)器人達(dá)到指定位置方法數(shù)
└ 換錢的方法數(shù)
└ 打氣球的*大分?jǐn)?shù)
└ *長(zhǎng)遞增子序列
└ 信封嵌套問題
└ 漢諾塔問題
└ *長(zhǎng)公共子序列問題
└ *長(zhǎng)公共子串問題
└ 子數(shù)組異或和為0的*多劃分
└ *小編輯代價(jià)
└ 字符串的交錯(cuò)組成
└ 龍與地下城游戲問題
└ 數(shù)字字符串轉(zhuǎn)換為字母組合的種數(shù)
└ 表達(dá)式得到期望結(jié)果的組成種數(shù)
└ 排成一條線的紙牌博弈問題
└ 跳躍游戲
└ 數(shù)組中的*長(zhǎng)連續(xù)序列
└ N皇后問題
第5章 字符串問題
└ 判斷兩個(gè)字符串是否互為變形詞
└ 判斷兩個(gè)字符串是否互為旋轉(zhuǎn)詞
└ 將整數(shù)字符串轉(zhuǎn)成整數(shù)值
└ 字符串的統(tǒng)計(jì)字符串
└ 判斷字符數(shù)組中是否所有的字符都只出現(xiàn)過一次
└ 在有序但含有空的數(shù)組中查找字符串
└ 字符串的調(diào)整與替換
└ 翻轉(zhuǎn)字符串
└ 完美洗牌問題
└ 刪除多余字符得到字典序*小的字符串
└ 數(shù)組中兩個(gè)字符串的*小距離
└ 字符串的轉(zhuǎn)換路徑問題
└ 添加*少字符使字符串整體都是回文字符串
└ 括號(hào)字符串的有效性和*長(zhǎng)有效長(zhǎng)度
└ 公式字符串求值
└ 0左邊必有1的二進(jìn)制字符串?dāng)?shù)量
└ 拼接所有字符串產(chǎn)生字典順序*小的大寫字符串
└ 找到字符串的*長(zhǎng)無重復(fù)字符子串
└ 找到指定的新類型字符
└ 旋變字符串問題
└ *小包含子串的長(zhǎng)度
└ 回文*少分割數(shù)
└ 字符串匹配問題
└ 字典樹(前綴樹)的實(shí)現(xiàn)
└ 子數(shù)組的*大異或和
第6章 大數(shù)據(jù)和空間限制
└ 認(rèn)識(shí)布隆過濾器
└ 只用2GB內(nèi)存在20億個(gè)整數(shù)中找到出現(xiàn)次數(shù)*多的數(shù)
└ 40億個(gè)非負(fù)整數(shù)中找到未出現(xiàn)的數(shù)
└ 找到100億個(gè)URL中重復(fù)的URL及搜索詞匯的Top K問題
└ 40億個(gè)非負(fù)整數(shù)中找到出現(xiàn)兩次的數(shù)和所有數(shù)的中位數(shù)
└ 一致性哈希算法的基本原理
└ 島問題
第7章 位運(yùn)算
└ 不用額外變量交換兩個(gè)整數(shù)的值
└ 不用做任何比較判斷找出兩個(gè)數(shù)中較大的數(shù)
└ 只用位運(yùn)算不用算術(shù)運(yùn)算實(shí)現(xiàn)整數(shù)的加減乘除運(yùn)算
└ 整數(shù)的二進(jìn)制數(shù)表達(dá)中有多少個(gè)1
└ 在其他數(shù)都出現(xiàn)偶數(shù)次的數(shù)組中找到出現(xiàn)奇數(shù)次的數(shù)
└ 在其他數(shù)都出現(xiàn)k次的數(shù)組中找到只出現(xiàn)一次的數(shù)
└ 第8章 數(shù)組和矩陣問題
└ 轉(zhuǎn)圈打印矩陣
└ 將正方形矩陣順時(shí)針轉(zhuǎn)動(dòng)90°
└ “之”字形打印矩陣
└ 找到無序數(shù)組中*小的k個(gè)數(shù)
└ 需要排序的*短子數(shù)組長(zhǎng)度
└ 在數(shù)組中找到出現(xiàn)次數(shù)大于N/K的數(shù)
└ 在行列都排好序的矩陣中找指定數(shù)
└ *長(zhǎng)的可整合子數(shù)組的長(zhǎng)度
└ 不重復(fù)打印排序數(shù)組中相加和為給定值的所有二元組和三元組
└ 未排序正數(shù)數(shù)組中累加和為給定值的*長(zhǎng)子數(shù)組長(zhǎng)度
└ 未排序數(shù)組中累加和為給定值的*長(zhǎng)子數(shù)組系列問題
└ 未排序數(shù)組中累加和小于或等于給定值的*長(zhǎng)子數(shù)組長(zhǎng)度
└ 計(jì)算數(shù)組的小和
└ 自然數(shù)數(shù)組的排序
└ 奇數(shù)下標(biāo)都是奇數(shù)或者偶數(shù)下標(biāo)都是偶數(shù)
└ 子數(shù)組的*大累加和問題
└ 子矩陣的*大累加和問題
└ 在數(shù)組中找到一個(gè)局部*小的位置
└ 數(shù)組中子數(shù)組的*大累乘積
└ 打印N個(gè)數(shù)組整體*大的Top K
└ 邊界都是1的*大正方形大小
└ 不包含本位置值的累乘數(shù)組
└ 數(shù)組的partition調(diào)整
└ 求*短通路值
└ 數(shù)組中未出現(xiàn)的*小正整數(shù)
└ 數(shù)組排序之后相鄰數(shù)的*大差值
└ 做項(xiàng)目的*大收益問題
└ 分金條的*小花費(fèi)
└ 大樓輪廓問題
└ 加油站良好出發(fā)點(diǎn)問題
└ 容器盛水問題
第9章 其他題目
└ 從5隨機(jī)到7隨機(jī)及其擴(kuò)展
└ 一行代碼求兩個(gè)數(shù)的*大公約數(shù)
└ 有關(guān)階乘的兩個(gè)問題
└ 判斷一個(gè)點(diǎn)是否在矩形內(nèi)部
└ 判斷一個(gè)點(diǎn)是否在三角形內(nèi)部
└ 折紙問題
└ 能否完美地拼成矩形
└ 蓄水池算法
└ 設(shè)計(jì)有setAll功能的哈希表
└ *大的leftMax與rightMax之差的絕對(duì)值
└ 設(shè)計(jì)LRU緩存結(jié)構(gòu)
└ LFU緩存結(jié)構(gòu)設(shè)計(jì)
└ 設(shè)計(jì)RandomPool結(jié)構(gòu)
└ 并查集的實(shí)現(xiàn)
└ 調(diào)整[0,x)區(qū)間上的數(shù)出現(xiàn)的概率
└ 路徑數(shù)組變?yōu)榻y(tǒng)計(jì)數(shù)組
└ 正數(shù)數(shù)組的*小不可組成和
└ 累加出整個(gè)范圍所有的數(shù)*少還需幾個(gè)數(shù)
└ 一種字符串和數(shù)字的對(duì)應(yīng)關(guān)系
└ 1到n中1出現(xiàn)的次數(shù)
└ 從N個(gè)數(shù)中等概率打印M個(gè)數(shù)
└ 判斷一個(gè)數(shù)是否是回文數(shù)
└ 在有序旋轉(zhuǎn)數(shù)組中找到*小值
└ 在有序旋轉(zhuǎn)數(shù)組中找到一個(gè)數(shù)
└ 數(shù)字的英文表達(dá)和中文表達(dá)
└ 分糖果問題
└ 一種消息接收并打印的結(jié)構(gòu)設(shè)計(jì)
└ 隨時(shí)找到數(shù)據(jù)流的中位數(shù)
└ 在兩個(gè)長(zhǎng)度相等的排序數(shù)組中找到上中位數(shù)
└ 在兩個(gè)排序數(shù)組中找到第k小的數(shù)
└ 兩個(gè)有序數(shù)組間相加和的Top k問題
└ 出現(xiàn)次數(shù)的Top k問題
└ Manacher算法
└ KMP算法
└ 丟棋子問題
└ 畫匠問題
└ 郵局選址問題
程序員代碼面試指南:IT名企算法與數(shù)據(jù)結(jié)構(gòu)題目最優(yōu)解(第2版) 作者簡(jiǎn)介
左程云,本科和碩士先后就讀于華中科技大學(xué)和芝加哥大學(xué),在多家國(guó)內(nèi)外優(yōu)秀互聯(lián)網(wǎng)公司工作多年。自2010年起專注刷題至今,從2015年開始利用業(yè)余時(shí)間在牛客網(wǎng)平臺(tái)針對(duì)代碼面試與算法開始教學(xué)工作。
- >
李白與唐代文化
- >
伊索寓言-世界文學(xué)名著典藏-全譯本
- >
小考拉的故事-套裝共3冊(cè)
- >
隨園食單
- >
朝聞道
- >
中國(guó)歷史的瞬間
- >
新文學(xué)天穹兩巨星--魯迅與胡適/紅燭學(xué)術(shù)叢書(紅燭學(xué)術(shù)叢書)
- >
月亮與六便士