原创 計算機網絡應用層之cookie

一、生活中的cookie 無論你知不知道Cookie是什麼,在你的生活中,肯定有使用過它。還記得你使用瀏覽器瀏覽網頁時,當你要登陸時,網頁上有一個記住密碼或自動登陸的選項,當你選擇時,你就使用了Cookie。那麼在下次訪問該網站時,你可能

原创 交換兩個子數組的位置(只使用1個輔助空間)

一、問題描述 其實這是一個非常基本和常用的數組操作,它的描述如下: 有一數組X[0...n-1],現在把它發爲兩個子數組x1[0...m]和x2[m+1...n-1],交換這兩個子數組,使用數組x由x1x2變成x2x1,例如x={1,2,

原创 【博客之星評選】我爲什麼堅持寫博客

今天無意中在CSDN的博客之星評選活動看到自己竟然是候選人之一,真的是十分的驚訝也十分的高興。對於喜歡寫東西、喜歡分享的我來說,已經忍不住用文字來記錄一下今天的美好心情,同時也讓我回想起我是如何開始在CSDN上寫博客,併爲什麼堅持下來的。

原创 計算機網絡應用層 之 P2P

一、什麼是P2P 對等網絡(PeertoPeer,簡稱P2P)也稱爲對等連接,是一種新的通信模式,每個參與者具有同等的能力,可以發起一個通信會話。 這個定義有點抽象,下面就來簡單地解釋一下。粗略地講,應用程序可以設計成採用客戶機/服務器

原创 計算機網絡應用層之域名系統DNS

一、爲什麼存在DNS 就像我們寄信需要一個地址一樣,我們需要向網絡上的某臺主機通信,也要知道我們的主機的地址。我們知道,這個地址就是IP地址,它是一個可以在因特網上唯一標識一臺主機的地址。然而就如我們知道的那樣,IP地址只是4個十進制數字

原创 用匯編語言編寫程序打印ASCII表

打印一個ASCII表在高級程序設計語言中是一個非常簡單的程序,但是用匯編又該如何編寫呢? 一、設計思路 我們可以按15行*16列的表格形式顯示ASCII碼爲10H一100H的所有字符,即以行爲主的順序及ASCII碼遞增的次序依次顯示對應

原创 快速排序中常見中軸選擇方法及實現代碼

一、選取最後一個元素 在我們的課本中,看到最多的就是選擇第一個元素作爲中軸,但是在很多書上卻選擇最後一個元素作爲中軸。下面就讓我們來一睹選取最後一個元素作爲中軸的快排。 注:本文中的所有算法都採用雙向掃描法,即,設兩個下標i和j,i和右

原创 設計實現C++內存的半自動釋放

C++的一大優點就直接提供了內存的申請和使用功能,讓程序員可以根據自己的需要,通過alloc系列函數或new運算符來申請使用內存,但是C++卻不像java或C#那樣,提供了垃圾的自動回收機制,我們申請的內存要由自己來管理、自己來釋放,也就

原创 計算機網絡應用層之HTTP協議

一、什麼是HTTP協議 HTTP是HyperText Transfer Protocol即超文本傳輸協議的縮寫,是Web應用層協議之一。 HTTP協議由兩部分程序實現:一個客戶機程序和一個服務器程序,它們運行在不同的端系統中,通過交換H

原创 單循環賽程安排問題

首先,來解釋一下,什麼是單循環問題,其實,這是一個我們在實現中經常遇到的問題。 問題描述: 賽程問題:有N個運動員進行單循環賽,即兩個運動員都要與其他所有運動員比賽一次。要求每個運動員每天只進行一次比賽,且整個賽程在N-1天內結束,運動員

原创 我的2013——學習生活總結

2013年即將結束,大三的一半即將過去,回顧這一年的種種,個人認爲這一年過得還算充實和豐富。下面就從各個方面對這一年的學習生活情況總結一下。 一、學習技術方面 今年學校開設的課程加上自己自學的知識還真是接觸和學習了不少的IT方面的技術。

原创 求最大連續子數列和(只掃描一次數列)

一、什麼是求最大連續子數列和 首先來看看這是個怎樣的問題的,問題描述:一個整型數組,數組裏有正數也有負數。數組中連續的一個或多個整數組成一個子數組,每個子數組都有一個和,求所有子數組的和的最大值。注意:當全是負數的情況時,返回最大的那個負

原创 用匯編實現數字轉化爲字符串的函數itoa

對於熟悉C語言的大家來說說,itoa這個函數大家一定不會陌生。itoa是廣泛應用的非標準C語言擴展函數,它的功能是:將任意類型的數字轉換爲字符串。 爲了更加清楚地讓我們知道,如何使用彙編語言來實現這個函數,下面先以用C語言自己實現一個i

原创 用彙編語言編寫程序打印ASCII表

打印一個ASCII表在高級程序設計語言中是一個非常簡單的程序,但是用匯編又該如何編寫呢? 一、設計思路 我們可以按15行*16列的表格形式顯示ASCII碼爲10H一100H的所有字符,即以行爲主的順序及ASCII碼遞增的次序依次顯示對應

原创 求數組中第k個最小數

一、問題描述 給定一個數組,數組中的數據無序,在一個數組中找出其第k個最小的數,例如對於數組x,x = {3,2,1,4,5,6},則其第2個最小的數爲2。 二、解題思路 本算法跟快排的思想相似,首先在數組中選取一個數centre作爲樞