原创 最長公共子序列(LCS)問題

最長公共子序列(LCS)問題 我們經常遇到:給定兩個序列,求這兩個序列的最長公共子串問題,形式化表示:給定兩個序列X=<>和Y=<>,求X和Y長度最長的公共子序列,本文將利用動態規劃方法高效地求解LCS(連續和不連續),並分別給出在C編寫

原创 怎樣給一個磁盤文件排序?

假設給你一個問題:怎樣給一個磁盤排序?我們首要做的就是分析該問題,弄清問題的正確的具體描述(尤其在面試的時候很重要)。 問題的準確描述:1、輸入:一個最多包含n個正整數的文件,每個數都小於n,其中n=10000000。如果在輸入文件中有任

原创 八種常用內部排序算法總結

在公司實習了,由於公司的性質,以後的工作中用到算法&數據結構的知識可能會很少,很想把以前學的數據結構&算法的知識系統的回憶一下,但由於時間的原因,再加上我一直都很喜歡排序算法的思想。近期主要就排序這個問題做一個系統的介紹:冒泡排序,簡單選

原创 九種常用排序的性能分析總結

間間斷斷的將9種排序實現,並且將其以博客筆記的形式記錄下來;現在就該來綜合的分析這九種排序,讓我們先來看看其算法複雜度和穩定性的分析結果: 算法複雜度以及穩定度分析 算法名稱 平均時間 輔助空間 穩定性 冒泡排序 O(n2) O(1)

原创 靈機一動,經典算法

摘自於編程珠璣第二章,加入了一些自己的東西。 看起來很困難的問題也可以有一個簡單的、意想不到的答案。拿到一個問題,不要急於完成程序的實現,靜下心來多想一想。 首先我們來看兩個問題的描述: 一、將一個n元的一維向量順時針或逆時針旋轉i個位置

原创 TCP的建立連接和關閉連接

TCP(TransmissionControl Protocol傳輸控制協議 )是一種面向連接(連接導向)的、可靠的、基於IP的傳輸層協議。 1、TCP建立數據連接 TCP是因特網中的傳輸層協議,使用三次握手協議建立連接。當客戶端向服務器

原创 一個晚上突然地隨筆

這篇是我的寫的第一篇博客,我本科就讀於一所普通的211高校,讀的是數學專業,稀裏糊塗的過了大學前兩年,一事無成(計算機二級沒有過,甚至英語四級都沒有過),加上讀數學的興趣不濃,決定跨門專業,選擇了計算機,抱着不成功便成仁的決心,從大三開始

原创 公司實習不到兩週的總結and感想

通過最近差不多接近2周的學習,也算是首次接觸Android到現在,當然在這之前JAVA學的也是非常的淺薄,大約花了不到一個月的時間研究了Java,最後開發了一個基於TCP的多線程UI聊天程序,然後直接就到了一個公司去實習,公司做的主要是車

原创 大端模式和小端模式

一、什麼是大端(Big_Endian)和小端(Little_Endian) 1)大端模式(Big_Endian)就是高位字節排放在內存的低地址端,低位字節排放在內存的高地址端。 2)小端模式(Little_Endian)就是低位字節排放在

原创 內存對齊的原則以及作用

首先由一個程序引入話題:  1 //環境:vc6 + windows sp2 2 //程序1 3 #include <iostream> 4  5 using namespace std; 6  7 struct st1  8 { 9 

原创 程序所佔用系統內存總結及全局變量與靜態變量的區別

 本文主要講述程序所佔用系統內存的分段,以及棧與堆的區別(數據結構,內存),然後分別就全局和靜態的所構造的變量做一介紹,本文參考了幾篇文章並列出: 原文1:http://www.cnblogs.com/lln7777/archive/20

原创 TCP和UDP的區別(在面試中的回答)

TCP(傳輸控制協議): 1)提供IP環境下的數據可靠傳輸,主要有:超時重傳機制(發送端在RTO時間內未收到接收端的ack確認信息);擁塞控制(慢啓動和擁塞避免);字節流順序(每個字節都有一個序號);面向連接。全雙工操作(數據在兩個方向上