原创 [leetcode]-238. Product of Array Except Self

題目: Given an array nums of n integers where n > 1,  return an array output such that output[i] is equal to the product

原创 [leetcode]-1293 Shortest Path in a Grid with Obstacles Elimination

題目: Given a m * n grid, where each cell is either 0 (empty) or 1 (obstacle). In one step, you can move up, down, left o

原创 [leetcode]-10 Regular Expression Matching

描述: Given an input string (s) and a pattern (p), implement regular expression matching with support for '.' and '*'. '.

原创 Callbacks, Promises and Async/Await

轉載地址: https://medium.com/front-end-hacking/callbacks-promises-and-async-await-ad4756e01d90 Callbacks, Promises and Asyn

原创 深刻理解Python中的元類(metaclass)

文章地址: http://python.jobbole.com/21351/

原创 判斷兩個矩形是否重疊

判斷兩個矩形是否重疊關於如何判斷兩個矩形重疊,這是我在實際項目開發當中曾經遇到過的問題:“判斷圖像中檢測到的兩個人臉框矩形是否有重疊部分,並計算重疊大小,從而確認是否爲同一個人臉”。後來,在瀏覽博客時,也發現也有人將這個問題當做面試題目,

原创 常見操作系統筆試面試題整理

1、進程和線程的區別和聯繫 1)進程是操作系統進行資源分配的基本單位,線程是CPU調度的基本單位 2)一個進程可以包含多個線程,線程間共享進程的所有資源,每個線程都自己的堆棧和局部變量 3)進行有自己的獨立的地址空間,每啓動一個進程,系統

原创 網絡筆試面試題整理

1、OSI,TCP/IP五層協議的體系結構以及各層協議 OSI分層:物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層 物理層:中繼器、集線路、網關 (媒體傳輸比特Bit) 數據鏈路層:PPP、VLAN、MAC (把比特組裝成幀和

原创 常見數據結構筆試面試題

1、什麼平衡二叉樹? 平衡二叉樹,是一種二叉排序樹,其中每個結點的左子樹和右子樹的高度差至多等於1。它是一種高度平衡的二叉排序樹。高度平衡?意思是說,要麼它是一棵空樹,要麼它的左子樹和右子樹都是平衡二叉樹,且左子樹和右子樹的深度之差的絕對

原创 分段,分頁與段頁式存儲管理

一.  分頁存儲管理 1.基本思想 用戶程序的地址空間被劃分成若干固定大小的區域,稱爲“頁”,相應地,內存空間分成若干個物理塊,頁和塊的大小相等。可將用戶程序的任一頁放在內存的任一塊中,實現了離散分配。 1)      等分內存 頁式存儲

原创 常見設計模式筆試面試題

設計模式一套被反覆使用,多數人知曉的代碼設計經驗的總結,實現可重用代碼,使代碼更容易被理解,保證代碼可靠性。 總體來說,設計模式分爲三大類: 創建型模式(五種):工廠方法模式、抽象工廠模式、單例模式、建造者模式、原型模式 結構型模式(七種

原创 劍指Offer-字符串的匹配

轉載地址:https://www.cnblogs.com/AndyJee/p/4700373.html題目:請實現一個函數用來匹配包括'.'和'*'的正則表達式。模式中的字符'.'表示任意一個字符,而'*'表示它前面的字符可以出現任意次(

原创 劍指Offer-鏈表中環的入口節點

判斷鏈表中是否有環使用追趕的方法,設定兩個指針slow、fastslow、fast,均從頭指針開始,每次分別前進1步、2步。如存在環,則兩者相遇;如不存在環,fastfast遇到NULLNULL退出。slow、fastslow、fast,

原创 劍指Offer-序列化反序列化二叉樹

轉自http://cuijiahua.com/blog/2018/01/basis_61.html一、前言本系列文章爲《劍指Offer》刷題筆記。刷題平臺:牛客網書籍下載:共享資源二、題目請實現兩個函數,分別用來序列化和反序列化二叉樹。1

原创 常見C++筆試面試題整理

1、C和C++的區別 1)C是面向過程的語言,是一個結構化的語言,考慮如何通過一個過程對輸入進行處理得到輸出;C++是面向對象的語言,主要特徵是“封裝、繼承和多態”。封裝隱藏了實現細節,使得代碼模塊化;派生類可以繼承父類的數據和方法,擴展