原创 【宋詞】蔣捷--虞美人-聽雨

虞美人 蔣捷 少年聽雨歌樓上,紅燭昏羅帳 壯年聽雨雲州中,江闊雲低,斷雁叫西風 而今聽雨僧廬下,鬢已星星也 悲歡離合總無情,一任階前,點滴到天明 譯文:   年少的時候,歌樓上聽雨,紅燭盞盞,昏暗的燈光下羅帳輕盈。 人到中年,在異國他鄉的小

原创 【音樂爬蟲】Python爬蟲-selenium+browsermob-proxy 解決動態網頁 js渲染問題

1.一般的python爬蟲很簡單,直接請求對應網址,解析返回的數據即可,但是有很多網站的數據的js動態渲染的,你直接請求是得不到對應的數據的   這時就需要其它手段來處理了。 2.以一個例子來說明,整個過程,爬取一個音樂網站的對應歌手的歌曲

原创 51單片機-藍牙遙控智能小車-紅外循跡(代碼+硬件連接)

  前幾天弄了個基於51芯片的藍牙紅外小車,因爲是新手也沒有人教,網上的資料也不夠齊全(很多都是跳過新手那一步,比如說接線),做的過程中遇到很多問題,做的比較艱難,因而寫一篇記錄整個過程的文章,希望能夠給新手提供一些幫助同時也做一個總結。

原创 數據結構之鏈表篇(單鏈表,循環鏈表,雙向鏈表)C語言版

1.鏈表   鏈表是線性表的一種,由一系列節點(結點)組成,每個節點包含一個數據域和一個指向下一個節點的指針域。鏈表結構可以克服數組需要預先知道數據大小的缺點,而且插入和刪除元素很方便,但是失去數組隨機讀取的優點。鏈表有很多種不同類型:單向

原创 【網絡編程02】簡單聊天程序

  有了上次socket的基礎知識,網絡編程01  可以寫一個簡單的聊天程序,隨便複習一下基礎知識。 1.線程   我們要實現可以同時發送和接收信息,就需要多線程了,一個用於發,一個用於收。   這次用CreateThread來創建線程。函

原创 【網絡編程01】socket的基礎知識-簡單網絡通信程序

1.什麼是socket   socket(套接字),簡單來說是IP地址與端口(port)的組合,可以與遠程主機的應用程序進行通信。通過IP地址可以確定一臺主機,而通過端口則可以確定某一個應用程序。IP+端口則可以完全確定某臺主機的某個應用。

原创 排序算法07----------------------希爾排序

1.希爾排序   希爾排序是對直接插入排序的一種改進,基本思想是隔一定間隔取元素組成一組元素,然後對這組元素進行直接插入排序,所有元素排序完一次後。間隔減少,再進行同樣的操作,直到間隔變爲1,這時就是直接插入排序了,因爲經過前面的步驟,元素

原创 VMware安裝教程---------------------以及Windows,Linux,Apple MAC OS系統安裝

1.什麼是VMware虛擬機   VMware虛擬機是一個虛擬機軟件,它可以在一臺機器上同時運行多個系統,這些系統包括Windows,Linux,Apple os等。 2.虛擬機有什麼用   虛擬機的用處很多,可以測試病毒木馬,測試軟件,配

原创 八皇后問題--------------------遞歸回溯

1.八皇后問題   在 8×8 格的棋盤上擺放八個皇后,使其不能互相攻擊,即任意兩個皇后都不能處於同一行、同一列或同一斜線上,問有多少種擺法。 2.思路   這問題很適合用回溯的思想解決。首先在第一行第一列放第一個皇后,然後在第二行第一列放

原创 排序算法06------------------------插入排序

1.插入排序   插入排序的原理很簡單,就是將待排序的元素和已排序好的元素進行比較,找到合適的位置進行插入。   例子:2 1 5 3 6 4(升序排序)   1)將第一個元素看成已排序好的序列,從第二個元素開始比較,先用一個臨時變量 te

原创 無重複字符最長子串----------------滑動窗口法

1.問題:給出一個字符串,找出其中無重複字符最長子串   abcbc  最長無重複子串是abc  長度是3   2.方法一,暴力法   我們可以找出每一個子串,然後找到最長的無重複字符的子串就可了,方法簡單粗暴。   代碼如下:   

原创 排序算法05------------------------堆排序(圖解)

1.堆排序   堆排序是用堆這種數據結構所設計的一種排序算法,近似一顆完成二叉樹,同時具有一個特性,父節點的值大於(小於)子節點的值。 堆分兩種,父節點比子節點大的叫最大堆,父節點比子節點小的叫最小堆 下面就是一個最大堆    2.堆排序

原创 排序算法04之------------------------歸併排序

1.歸併排序   歸併排序採用的思想是分而治之,簡單來說,就是將一個待排序的序列,不斷劃分,最終得到有序的序列(只剩一個元素的序列就是有序序列),然後將這些有序的序列進行合併,第一次合併將只有一個元素序列的有序子序列進行合併,就會得到有兩個

原创 小遊戲二之---------------五子棋

1.五子棋是一比較容易寫的小遊戲,很適合用來練手,作爲練手,不必弄太複雜,所以就不弄電腦AI了,只是玩家之間的對戰(AI下次再寫)。 2.五子棋的難點在於如何判斷輸贏,其實很簡單。每次下棋,就判斷該棋子的四個方向,橫豎方向,還有兩個對角線(

原创 排序算法02----------------選擇排序

1.選擇排序:首先在未排序序列中找到最小或最大元素,存放到排序序列的起始位置,再從剩餘未排序元素中繼續尋找最小或最大元素,然後放到已排序序列的末尾。重複第二步,直到所有元素均排序完畢 2.選擇排序和冒泡排序原理差不多,都是相鄰兩個元素進行比