原创 UDP入門學習II

目標:實現一個界面發送,另一個界面接收 參考:yafeilinux 目標界面: 思路: 發送界面 首先,在頭文件裏面聲明一個UDP套接字變量和一個按鈕槽函數 然後,在構造函數裏面定義UDP套接字變量和將按鈕

原创 UDP入門學習I

目標:實現一個界面發送和接收 注意:要在工程名的右鍵菜單中勾選NetWork library,並且在頭文件中加上#include <QtNetwork> 1. UDP套接字 UDP套接字就是一個IP地址加一個port端

原创 鏈表求和

描述:你有兩個用鏈表代表的整數,其中每個節點包含一個數字。數字存儲按照在原來整數中相反的順序,使得第一個數字位於鏈表的開頭。寫出一個函數將兩個整數相加,用鏈表形式返回和。 樣例 給出兩個鏈表 3->1->5->null 和 5

原创 二叉樹的最大(小)深度

描述:給定一個二叉樹,找出其最大深度。 二叉樹的深度爲根節點到最遠葉子節點的距離。 樣例 給出一棵如下的二叉樹: 思路:想到要採用遞歸調用的方法,但是不知道從何下手。後面參考網上,對左右子樹都進行Max函數的調用,然後進

原创 帶環鏈表

描述:給定一個鏈表,判斷它是否有環。 思路:採用追趕的方式,設立兩個指針slow,fast,都從頭結點head開始,每次分別前進一步,兩步。如果存在環,兩者最終相遇,否則fast會碰到NULL結束。 class Solution

原创 兩數之和

描述:給一個整數數組,找到兩個數使得他們的和等於一個給定的數 target。 你需要實現的函數twoSum需要返回這兩個數的下標, 並且第一個下標小於第二個下標。注意這裏下標的範圍是 1 到 n,不是以 0 開頭。 注意事項:

原创 刪除鏈表中的元素

題目要求:刪除鏈表中等於給定值val的所有節點。 樣例 給出鏈表 1->2->3->3->4->5->3, 和 val = 3, 你需要返回刪除3之後的鏈表:1->2->4->5。 思路:剛開始想着用一個指針實現,可是老是卡

原创 最長迴文子串

描述:給出一個字符串(假設長度最長爲1000),求出它的最長迴文子串,你可以假定只有一個滿足條件的最長迴文串。 樣例 給出字符串 “abcdzdcab”,它的最長迴文子串爲 “cdzdc”。 新知識點:迴文的含義是:正着看和

原创 翻轉字符串

描述:給定一個字符串,逐個翻轉字符串中的每個單詞。 說明 單詞的構成:無空格字母構成一個單詞 輸入字符串是否包括前導或者尾隨空格?可以包括,但是反轉後的字符不能包括 如何處理兩個單詞間的多個空格?在反轉字符串中間空格減少到

原创 斐波納契數列

查找斐波納契數列中第 N 個數。 所謂的斐波納契數列是指: 前2個數是 0 和 1 。 第 i 個數是第 i-1 個數和第i-2 個數的和。 斐波納契數列的前10個數字是: 0, 1, 1, 2, 3, 5, 8, 13, 2

原创 落單的數

描述:給出2*n + 1 個的數字,除其中一個數字之外其他每個數字均出現兩次,找到這個數字。 樣例 給出 [1,2,2,1,3,4,3],返回 4 思路:把每個數和包括它自己在內的每個數依次進行比較,如果相等,計數加1。最後

原创 最長無重複字符的子串

描述:給定一個字符串,請找出其中無重複字符的最長子字符串。 樣例 例如,在”abcabcbb”中,其無重複字符的最長子字符串是”abc”,其長度爲 3。 對於,”bbbbb”,其無重複字符的最長子字符串爲”b”,長度爲1。

原创 反轉整數

描述:將一個整數中的數字進行顛倒,當顛倒後的整數溢出時,返回 0 (標記爲 32 位整數)。 樣例 給定 x = 123,返回 321 給定 x = -123,返回 -321 思路:聯想到字符串翻轉函數reserve(),所

原创 編寫Qt多窗口程序

環境:VS2008+QT4.8.3 目的:實現按下登錄界面按鈕可以跳轉到主界面 添加主窗口 添加登錄對話框 先右擊類名,添加新類。 再選擇QT4GuiClass,添加。 再給工程命名,並且BaseClas

原创 信號和槽

環境:VS2008+QT4.8.3 如果要實現相應的信號對應一個槽函數,建議使用手動連接的方式。否則會出現槽函數對於一個信號響應兩次的問題。 手動連接: 在對應的.h文件中聲明槽函數 private slots: