原创 圖論——鄰接表表示法 圖的遍歷(深度優先搜索和廣度優先搜索)

1·圖的建立 鄰接法表示法: 對於圖中的每個節點Vi,建立一個單鏈表,把與Vi相鄰的節點放入這個鏈表中; 該表有三部分組成: (1):    point結構體,由節點的位置,邊的信息(例如邊的權值),下個節點的地址構成; (2):    

原创 圖論——鄰接矩陣表示法;最小生成樹的Kruskal算法和Prim算法

(1)-鄰接矩陣表示法 構成:    頂點數量,邊數量;   頂點的下標(一維數組),邊的信息(二維數組). #include<iostream> using namespace std; int maxsize=100; int ma

原创 出棧序列是否正確

wust.acm-1644題目:點擊打開鏈接#include<iostream> #include<stdio.h> using namespace std; typedef struct Node{ int num;

原创 網絡編程

一 相關概念 IP地址:網絡中計算機的唯一標識 端口:   正在運行的程序的標識 協議:通信的規則 常見DOS命令: ipconfig:          查看ip                            ping 空格後

原创 多線程

1.1進程與線程: 進程:正在運行的程序 線程:一個進程中的某一個任務 (1)一個進程可有一個或多個線程。 (2)JVM默認只創建一個線程。 1.2開啓線程方法: (1)定義實現Runnable接口(實現run方法)的類,將該類對象作爲T

原创 IO流

File類 1.1訪問文件與目錄 File類是java.io包的文件與目錄,若想在程序中操作文件與目錄,可通過File類完成. File類能新建,刪除,重命名文件和目錄,但不能訪問文件內容本身. File f = new File("/

原创 5 繼承

1.類,超類,子類 1)所有繼承都是公有繼承。 2)若子類的構造器沒有顯式地調用超類構造器,則將自動調用超類默認(無參數)構造器,若超類沒有不帶參數的構造器,且子類構造器中沒有顯式地調用超類的其它構造器,則會導致編譯錯誤。 多態: 多態是

原创 6 接口與內部類

                                        接口 Arrays類的sort方法                                                             

原创 Java-四 類與對象

1 類 1)對象中的數據域稱爲實例域,操作數據的方法成爲方法。 2)實現封裝的關鍵在於絕對不能讓類中的方法直接訪問其他類的實力域,對象狀態的改變必須通過調用方法實現。 2 對象 1)在Java中,任何對象變量的值都是對儲存在另一個地方的一

原创 Java

                                                                    3  Java 的基本程序設計結果 3.1  一個簡單的程序 1.class後面跟着的類名的命名必須以

原创 判斷一個樹是否是另一個樹的子樹

給定兩個非空二叉樹 s 和 t,檢驗 s 中是否包含和 t 具有相同結構和節點值的子樹。s 的一個子樹包括 s 的一個節點和這個節點的所有子孫。s 也可以看做它自身的一棵子樹。 示例 1: 給定的樹 s: 3 / \

原创 路徑總和

給定一個二叉樹,它的每個結點都存放着一個整數值。 找出路徑和等於給定數值的路徑總數。 路徑不需要從根節點開始,也不需要在葉子節點結束,但是路徑方向必須是向下的(只能從父節點到子節點)。 二叉樹不超過1000個節點,且節點數值範圍是 [-1

原创 線索二叉樹

#include<stdio.h> #include<iostream> using namespace std; typedef char Type; typedef struct Node{ struct Node*lef

原创 反轉鏈表

題目:        給定一個c++的線性鏈表存儲結構 ,將不帶頭節點的線性鏈表反轉. struct ListNode {       int val;      ListNode *next;      ListNode(int x)

原创 鏈表-109. 有序鏈表轉換高度平衡二叉搜索樹

題目: 給定一個單鏈表,其中的元素按升序排序,將其轉換爲高度平衡的二叉搜索樹。 本題中,一個高度平衡二叉樹是指一個二叉樹每個節點 的左右兩個子樹的高度差的絕對值不超過 1。 例如: 給定的有序鏈表: [-10, -3, 0, 5, 9