原创 亞馬遜面試經歷

最近參加了亞馬遜中國的面試,前後總共六輪,特記錄下各面的考察點 1面-算法編程 題目1:將一顆平衡二叉樹轉換成雙向鏈表,要求原地轉換,不額外申請空間 題目2:找出一個字符串中不含重複字符的最長子串 2面-系統設計 系統設計: 1)

原创 Java中從maven拉取所需jar包及其依賴

背景 最近基於alibaba的jarslink框架開發了算法服務平臺。各個算法模塊以jar包的形式推送到maven倉庫中,java代碼需要根據配置信息,從中央倉庫拉取各個jar包及其依賴,本文記錄下對應的代碼實現 maven 依賴

原创 ssh的三種端口轉發方式

1、綁定本地端口 既然SSH可以傳送數據,那麼我們可以讓那些不加密的網絡連接,全部改走SSH連接,從而提高安全性。 假定我們要讓8080端口的數據,都通過SSH傳向遠程主機,命令就這樣寫:     $ ssh -D 8080 user@

原创 檢測鏈表中的循環

給定一個鏈表,檢查鏈表是否有循環。下圖顯示了帶有循環的鏈表。 image 解題思路 使用快慢兩個指針遍歷鏈表。 將慢指針(slow_p)一次移動一個節點,另快指針(fast_p)移動兩個。 如果這些指針在同一節點相遇,則存在循環。如果指

原创 什麼是AES算法

概述 加密算法分爲單向加密和雙向加密。單向加密包括MD5,SHA等摘要算法。單向加密算法是不可逆的,也就是無法將加密後的數據恢復成原始數據,除非採取碰撞攻擊和窮舉的方式。像是銀行賬戶密碼的存儲,一般採用的就是單向加密的方式。 雙向加密是可

原创 漫畫:什麼是base64編碼

        Base64和ASCII的區別 ASCII碼的範圍是0-127,其中0-31和127這33個字符屬於控制字符,剩下的32-126這95個字符屬於可打印字符,包含了數字、大小寫字母和常用符號等。他們與十進制的對應關係

原创 幾句話說盡成功之道

職業生涯 找一個好的行業 自己做一個耐心的老員工 房產投資 找一個好的城市 自己做一個耐心的老房東 股票投資 找幾隻好的股票 自己做一個耐心的老股東 婚姻家庭 找一個好人 自己做一個耐心的好人

原创 code review到底在審查什麼?

code review到底在審查什麼? 在做一個代碼的code review時,以下是我們需要關注的: 是否明晰 代碼應該易於閱讀,應該一目瞭然地瞭解每行和每個功能,否則,它太複雜了。 代碼應符合模塊內已使用的編碼風格(縮進,間距

原创 什麼是https協議

1. HTTP和HTTPS概念 HTTP:是互聯網上應用最爲廣泛的一種網絡協議,是一個客戶端和服務器端請求和應答的標準(TCP),用於從WWW服務器傳輸超文本到本地瀏覽器的傳輸協議,它可以使瀏覽器更加高效,使網絡傳輸減少。 HTTPS:是