店鋪:機械工業出版社官方旗艦店 出版社:機械工業出版社 ISBN:9787111607793 商品編碼:10026474118246 品牌:機械工業出版社(CMP) 出版時間:2018-09-01 頁數:200 字數:459000 審圖號:9787111607793 作者:張波
" 商品參數 商品基本信息 | 商品名稱: | Python程序員面試算法寶典 | 作者: | 張波 楚秦 等 | 市場價: | 65.00 | ISBN號: | 9787111607793 | 版次: | 1-1 | 出版日期: | 2018-09 | 頁數: | 289 | 字數: | 459 | 出版社: | 機械工業出版社 | 內容介紹 本書是一本講解程序員面試筆試算法的書,代碼采用Python語言編寫,書中除了講解如何解答算法問題以外,還引入了例子輔以說明,讓讀者更容易理解。 本書幾乎將程序員面試筆試過程中算法類真題一網打盡,在題目的廣度上,通過各種渠道,搜集了近3年來幾乎所有IT企業面試筆試算法的高頻題目,所選擇題目均為企業招聘使用題目。在題目的深度上,本書由淺入深,庖丁解牛式地分析每一個題目,並提煉歸納。同時,引入例子與源代碼、時間復雜度與空間復雜度的分析,這些內容是其他同類書籍所沒有的。本書根據真題所屬知識點進行分門別類,結構合理,條理清晰,對於讀者進行學習與檢索意義重大。 本書可作為計算機相關專業畢業生面試筆試的求職用書,也可以作為本科生、研究生學習數據結構與算法的輔導書籍,同時適合期望在計算機軟硬件行業大顯身手的計算機愛好者閱讀。 關聯推薦 在這裡,有面試筆試常見技巧的提煉與總結; 在這裡,有面試筆試高頻算法知識點的整理與剖析; 在這裡,有面試筆試歷年算法真題的解答與拓展。 目錄 前言 面試筆試經驗技巧篇 經驗技巧1 如何巧妙地回答面試官的問題2 經驗技巧2 如何回答技術性的問題3 經驗技巧3 如何回答非技術性問題4 經驗技巧4 如何回答快速估算類問題5 經驗技巧5 如何回答算法設計問題6 經驗技巧6 如何回答繫統設計題9 經驗技巧7 如何解決求職中的時間衝突問題11 經驗技巧8 如果面試問題曾經遇見過,是否要告知面試官12 經驗技巧9 被企業拒*後是否可以再申請12 經驗技巧10 如何應對自己不會回答的問題13 經驗技巧11 如何應對面試官的“激將法”語言14 經驗技巧12 如何處理與面試官持不同觀點這個問題15 前言 面試筆試經驗技巧篇 經驗技巧1 如何巧妙地回答面試官的問題2 經驗技巧2 如何回答技術性的問題3 經驗技巧3 如何回答非技術性問題4 經驗技巧4 如何回答快速估算類問題5 經驗技巧5 如何回答算法設計問題6 經驗技巧6 如何回答繫統設計題9 經驗技巧7 如何解決求職中的時間衝突問題11 經驗技巧8 如果面試問題曾經遇見過,是否要告知面試官12 經驗技巧9 被企業拒*後是否可以再申請12 經驗技巧10 如何應對自己不會回答的問題13 經驗技巧11 如何應對面試官的“激將法”語言14 經驗技巧12 如何處理與面試官持不同觀點這個問題15 經驗技巧13 關注職場暗語15 面試筆試真題解析篇 *1章 鏈表21 1.1 如何實現鏈表的逆序22 1.2 如何從無序鏈表中移除重復項26 1.3 如何計算兩個單鏈表所代表的數之和29 1.4 如何對鏈表進行重新排序32 1.5 如何找出單鏈表中的倒數素35 1.6 如何檢測一個較大的單鏈表是否有環39 1.7 如何把鏈素翻轉41 1.8 如何把鏈表以K個結點為一組進行翻轉43 1.9 如何合並兩個有序鏈表46 1.10 如何在隻給定單鏈表中某個結點的指針的情況下刪除該結點49 1.11 如何判斷兩個單鏈表(無環)是否交叉51 1.12 如何展開鏈接列表54 *2章 棧、隊列與哈希57 2.1 如何實現棧57 2.2 如何實現隊列60 2.3 如何翻轉棧素64 2.4 如何根據入棧序列判斷可能的出棧序列68 2.5 如何用O(1)的時間復雜度求棧素71 2.6 如何用兩個棧模擬隊列操作73 2.7 如何設計一個排序繫統74 2.8 如何實現LRU緩存方案76 2.9 如何從給定的車票中找出旅程77 2.10 如何從數組中找出滿足a b=c d的兩個數對79 第3章 二叉樹81 3.1 二叉樹基礎知識81 3.2 如何把一個有序整數數組放到二叉樹中83 3.3 如何從頂部開始逐層打印二叉樹結點數據84 3.4 如何求一棵二叉樹的*大子樹和87 3.5 如何判斷兩棵二叉樹是否相等89 3.6 如何把二叉樹轉換為雙向鏈表90 3.7 如何判斷一個數組是查找樹後序遍歷的序列93 3.8 如何找出排序二叉樹上任意兩個結點的*近共同父結點94 3.9 如何復制二叉樹101 3.10 如何在二叉樹中找出與輸入整數相等的所有路徑102 3.11 如何對二叉樹進行鏡像反轉104 3.12 如何在二叉排序樹中找出*一個大於中間值的結點106 3.13 如何在二叉樹中找出路徑*大的和107 3.14 如何實現反向DNS查找緩存109 第4章 數組112 4.1 如何找出數組中唯*素112 4.2 如何查找素的*大值和*小值118 4.3 如何找出旋轉數組素121 4.4 如何找出數組中丟失的數124 4.5 如何找出數組中出現奇數次的數126 4.6 如何找出數組中第k小的數128 4.7 如何求數組素的*小距離131 4.8 如何求解組距離134 4.9 如何求數組中*對值*小的數138 4.10 如何求數組連續*大和141 4.11 如何找出數組中出現1次的數145 4.12 如何對數組旋轉147 4.13 如何在不排序的情況下求數組中的中位數148 4.14 如何求集合的所有子集150 4.15 如何對數組進行循環移位152 4.16 如何在有規律的二維數組中進行高效的數據查找155 4.17 如何尋找*多的覆蓋點157 4.18 如何判斷請求能否在給定的存儲條件下完成158 4.19 如何按要求構造新的數組160 4.20 如何獲取*好的矩陣鏈相乘方法161 4.21 如何求解迷宮問題163 4.22 如何從三個有序數組中找出它們素165 4.23 如何求兩個有序集合的交集167 4.24 如何對有大量重復的數字的數組排序171 4.25 如何對任務進行調度174 4.26 如何對磁盤分區176 第5章 字符串178 5.1 如何求一個字符串的所有排列178 5.2 如何求兩個字符串的*長公共子串183 5.3 如何對字符串進行反轉187 5.4 如何判斷兩個字符串是否為換位字符串189 5.5 如何判斷兩個字符串的包含關繫191 5.6 如何對由大小寫字母組成的字符數組排序193 5.7 如何消除字符串的內嵌括號194 5.8 如何判斷字符串是否是整數196 5.9 如何實現字符串的匹配199 5.10 如何求字符串裡的*長回文子串202 5.11 如何按照給定的字母序列對字符數組排序208 5.12 如何判斷一個字符串是否包含重復字符210 5.13 如何找到由其他單詞組成的*長單詞212 5.14 如何統計字符串中連續的重復字符個數214 5.15 如何求*長遞增子序列的長度215 5.16 求一個串中出現的*一個*長重復子串216 5.17 如何求解字符串中字典序*大的子序列218 5.18 如何判斷一個字符串是否由另外一個字符串旋轉得到220 5.19 如何求字符串的編輯距離222 5.20 如何在二維數組中尋找*短路線224 5.21 如何截取包含中文的字符串227 5.22 如何求相對路徑228 5.23 如何查找到達目標詞的*短鏈長度229 第6章 基本數字運算232 6.1 如何判斷一個自然數是否是某個數的平方232 6.2 如何判斷一個數是否為2的n次方234 6.3 如何不使用除法操作符實現兩個正整數的除法236 6.4 如何隻使用 = 操作符實現加減乘除運算240 6.5 如何根據已知 顯示全部信息
" |