原创 Qt udp

Detailed Description The QUdpSocket class provides a UDP socket. UDP (User Datagram Protocol) is a lightweight, unr

原创 Qt5 UDP開發

最近在學習qt下socket開發,今天先學習了一下qt下udp socket的開發。參考了qt5的文檔。以及一些其他的參考書。 UDP是指user datagram protocol ,用戶數據報協議,是一種輕量級,不可靠的,面向

原创 QT5 下udp 編程實例

下面是一個簡單的QT5下的udp通信的下例子。服務器不停的利用定時器來向socket發送廣播消息,客戶端可以接收該消息並顯示。 首先建立工程UdpServer.pro。建立各控件的佈局。 udpserver.h: class U

原创 統計連續子數列的最值

給定一個整型數組,數組中的數組元素可能爲正也可能爲負值,求出該數組中元素連續相加的最大值。也就是求出和值最大的子數列。 比如給定一個數組 a【8】 = {1,-2,-5,3,8,-7,9,4},這個很顯然, 最大的和值爲a【3

原创 Linux IPC 之管道通信

IPC -interprocesscommunication就是指進程間的通信。一個程序往往要有很多進程協作來完成。那麼各個進程間的通信就很重要了,這是在 Unix/Linux下經常遇到的問題之一,它的主要目的就是要多個進程可以相

原创 歸併--排序

歸併排序採用的是一種分而治之的策略。首先將待排序數組劃分爲若干有序數組,然後再兩兩合併爲有序的數組,到最後合併爲一個有序數組。 歸併排序主要看怎麼把待排序數組劃分爲有序數組和怎麼將兩個有序的數組合併爲一個有序數組。 劃分好說,

原创 vi 之查找替換

今天看了一下vi的查找替換命令,感覺是方便的很。如果我們的程序很小或者只要更改一個或者說極少的幾個地方,可能不需要這個命令。如果程序很大或者我們想要修改的字符串出現在程序的很多地方,要一個一個的都查找到並且正確改正,可能要下不少功

原创 堆排序

今天學了一下堆排序。 堆排序(Heapsort)是指利用堆積樹(堆)這種數據結構所設計的一種排序算法,它是選擇排序的一種。可以利用數組的特點快速定位指定索引的元素。堆分爲大根堆和小根堆,是完全二叉樹。 如果根節點的編號爲i,那

原创 Qt中QStack簡單應用

棧就是一種後進先出的數據結構,就是最先進入的數據在棧的最底下,最後纔出來,最後進入的數據,在棧的頂端,最先出來。 下面利用棧實現了一個簡單十進制到二進制的轉換。 比如十進制的 10 轉換爲 二進制。必須明白數制之間是如何轉換的

原创 位操作之求絕對值

今天繼續學習了位操作,用位操作實現求一個數的絕對值: 對於一個整數a,如果是個正數就直接返回,但是如果是個負數呢?應該取反再返回,比如-5取反後應該是+5,然後返回。 在計算機中數都是用二進制來表示的,就是一串的0和1組合:

原创 二分法排序(折半插入排序)

有一次看到人家的面試題,什麼給定一個整型數組,讓用二分法對數組進行排序。一開始直接蒙了,什麼叫二分法排序?後來查了一下,就是插入排序前,對前面已經排好序的元素進行折半,以期比普通的插入排序更快速定位到要插入的位置。崩潰!!! 我

原创 c# Parse 和 TryParse

string IntStr = “100”; int ConvInt = int.Parse(IntStr); int IntResult; int.TryParse(IntStr,out IntResult); 區別:

原创 C# 字符串的連接

C#中字符串的連接大概有一下幾個方法: 1.利用 “+”(加號)運算符: string str = “Hello”+ “World”; console.WriteLine(str);//輸出 “HelloWorld

原创 Qt簡單座標繪製

今天試着在Qt中畫一個簡單的座標系。簡單記一下,還有一些問題。 在下面的測試當中,有用到鼠標事件,主要是獲取鼠標的座標位置;用到了QPen,QPainter等。 對於座標的繪製,首先要明白一點,窗體中的座標和平時數學中的座標不

原创 Qt中子窗體控件向父窗體控件傳值

今天學習Qt中控件相互傳值的方法。其中參考了一些網上的意見。今天學習了兩種方法。其中一種是利用全局變量;另一種是利用了Qt中的信號和槽機制。當學習signals和slot機制的時候,有一些疑問,在介紹利用signals和slot進