原创 Python進行SQLite數據庫操作

SQLite簡介 SQLite,是一款輕型的數據庫,是遵守ACID的關係型數據庫管理系統,它包含在一個相對小的C庫中。它是D.RichardHipp建立的公有領域項目。它的設計目標是嵌入式的,而且目前已經在很多嵌入式產品中使用了它

原创 AWK模式處理語言

AWK模式處理語言 簡介 AWK——一個強大的文本分析工具,是一種模式掃描和處理語言,它搜索一個或者多個文件,以查看這些文件中是否存在匹配指定模式的記錄(通常是文本行)。每次發現匹配記錄時,它通過執行動作的方式(比如將該記錄寫到標

原创 斐波那契數列

題目 斐波那契數列,又稱黃金分割數列,指的是這樣一個數列:0、1、1、2、3、5、8、13、21、…… 在數學上,斐波納契數列以如下被以遞歸的方法定義: F(0)=0, F(1)=1, F(n)=F(n-1)+F(n-2)

原创 跳臺階

題目 樓梯有n階臺階,上樓可以一步上1階,也可以一步上2階,編一程序計算共有多少種不同的走法。 解答 歸納 當只有1階臺階時,只有1種走法,只走1階。 即n=1,f(1)=1 當有2階臺階時,一次走1階有1種走法,一次走2階有

原创 網絡基礎知識

計算機與網絡發展的7個階段 批處理 分時系統 計算機之間的通信 計算機網絡的產生 互聯網的普及 以互聯網技術爲中心的時代 從“單純建立連接”到“安全建立連接” 協議 分組交換協議: 分組交換是指將大數據分割爲一個個叫包(Pa

原创 Java棧的實現

棧定義 棧(stack)是限定僅在表尾進行插入或刪除操作的線性表。 對棧來說,表尾端有其特殊含義,稱爲棧頂(top),相應地表頭端稱爲棧底(bottom)。不含元素的空表稱爲空棧。 棧的修改是按後進先出的原則進行的,因此,棧又稱

原创 求連續子數組的最大和

題目 求子數組的最大和 題目描述: 輸入一個整形數組,數組裏有正數也有負數。 數組中連續的一個或多個整數組成一個子數組,每個子數組都有一個和。 求所有子數組的和的最大值。要求時間複雜度爲O(n)。 例如輸入的數組爲:1 -1

原创 從尾到頭打印鏈表

題目 從尾到頭打印鏈表 輸入一個鏈表,從尾到頭打印鏈表每個節點的值。 解答 思路1:棧結構 鏈表的特性:查找其中某一個結點的時間複雜度是O(n),不像數組那樣可以直接通過下表在O(1)的時間內查找到指定元素。因此如果要查找鏈表元素

原创 最後亮的電燈數

題目 有n個燈排成一排,開始全部爲滅。有n個學生,第一個學生把所有是1倍數的燈開關按一下(燈打開),此時所有燈都打開;第二個學生把所有是2倍數的燈按一下開關(開啓變爲關閉,關閉變爲開啓);第三個學生把所有是3 倍數的燈按一下……,

原创 求一維數組中最小的k個值

題目: 求一個一維數組中最小的k個數。 解答: 方法一:排序 先把數組從小到大進行排序,取前k個數。 時間複雜度爲O(nlogn) 方法二:使用堆排序 創建一個最小堆,初始化大小爲k,堆頂爲堆的最大元素; 掃描一遍數組,往最小堆

原创 判斷迴文

題目 判斷是否爲迴文 解答 判斷是否爲迴文就是判斷正反兩個數的大小是否相等。 例如: 121=121,正反都一樣 代碼 C++程序代碼實現 // 判斷n是否爲迴文 bool symm(unsigned n){ int

原创 從n個人中選擇k個人的選法

題目 從n個人中選選k個人組成一個委員會的不同組合數。 解答 分析 從n-1個人到n個人,增加一個人,這個人可能被選中,也可能不被選中。若第n個人被選中則是從n-1個人中選擇k-1個人,若第n個人沒被選中,則是從n-1個人中選擇k

原创 Beautiful Soup(五)--其他相關

[Top] 輸出 格式化輸出 prettify() 方法將Beautiful Soup的文檔樹格式化後以Unicode編碼輸出,每個XML/HTML標籤都獨佔一行 markup = '<a href="http://example

原创 二維數組查找

題目 二維數組中的查找 在一個二維數組中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成一個函數,輸入這樣的一個二維數組和一個整數,判斷數組中是否含有該整數。 例如: 1,2,5 3,4,9

原创 Beautiful Soup(四)--修改文檔樹

[Top] Beautiful Soup的強項是文檔樹的搜索,但同時也可以方便的修改文檔樹 修改tag的名稱和屬性 在 Attributes 的章節中已經介紹過這個功能,但是再看一遍也無妨. 重命名一個tag,改變屬性的值,添加