原创 【數據結構】二叉樹的一個應用,哈夫曼編碼的生成

1.哈夫曼樹只有結點爲0.或者結點爲2的值。所以如果葉子結點爲n的話,那麼整個哈夫曼樹的所有結點個數爲2n-1;因爲結點爲2的結點個數n0=n2+1;所以總數n=n0+n2=2n0-1;    過程:<1>由已知的n個權值形成哈夫曼樹的初

原创 【數據結構-查找】哈希表的應用

#include<stdio.h> #include<conio.h> #define HASH_LEN 50                  

原创 【算法-分治】從數組中取出n個元素的所有組合(需要深入理解遞歸)

本文爲轉載,原文章出處http://www.cnblogs.com/shuaiwhu/archive/2012/04/27/2473788.html 如數組爲{1, 2, 3, 4, 5, 6},那麼從它中取出3個元素的組合有哪些,取

原创 【數據結構】查找-順序查找

結構體類型 struct Rec { int k; } Rec[n+1],爲了使得每個值對應的下標相同,所以設置大小爲n+1,Rec[0]的內容接下來說明 一般利用倒序查找方法從最後一個值向前查找這樣可以簡化函數步驟 程序如下: #in

原创 【數據結構-查找】有序表的查找-折半查找

算法流程: 對一個從小到大的序列來說。。。。。。。。。。。。 1.置查找範圍初態:low=1,high=n; 2.對當前的查找範圍進行以下處理     2.1求中項mid=(low+high)/2     2.2將指定值k與中項的關鍵字值

原创 簡述一下二級指針以及指針的引用在結構體中用法

我一下討論的都是在不用return把值進行返回的情況, 也就是說用指針的情況。 很簡單就是指針和引用,引用在新版本的c裏面也有包含,可以使用。 系統xp+ide用的 vc6.0: 要把一個值通過調用函數改變,可以用指針和引用,這個

原创 【數據結構-圖】圖的建立以及廣度優先遍歷算法

本文利用鄰接表的方法將圖進行了表示,並且利用廣度優先遍歷方法對圖進行遍歷 下面是一個圖的示例: 代碼如下: #include<iostream> using namespace std; typedef int VexType; typ

原创 【算法設計-分治】最大子數組問題

1.問題描述 算法導論上38頁,最大子數組給出一組數組來,然後求出使得從i到j的數組值的和最大的邊界i與j。如果不用分治的方法的話,需要通過暴力方法來尋找n(n-1)/2種。 方法: 2代碼: #include<iostream>

原创 結構體成員的內存分佈以及大端小端

大端與小端: 小端:字節的低位放在內存低位地址,高位放在內存高位地址。 大端:字節的高位地址放在內存低位地址,低位放在內存高位地址。 判斷系統是大端還是小端? 若判斷處理器是Big還是Little模式,有兩種方法。 1、 int

原创 c++中的靜態成員變量與靜態成員函數

1.靜態成員變量與全局變量幾乎一樣,唯一的不同是 調用網絡上面的回答如下 其實靜態變量跟全局變量差不多,都不是在類裏面定義的,必須在類外定義。但是類裏面的靜態變量,調用是必須加上類名修飾,否則不能知道那個靜態變量屬於哪個域 clas

原创 【數據結構-查找】次優排序樹

     當一列數中的查找概率各不相等的時候就需要利用次優排序來減少查找的次數,而不是利用折半查找。所以這個方法的一個前提也是說必須是有序序列,但是這個序列的每個值得查找概率不同。 代碼: 代碼是拷貝的別人的。。。。。。。所以有些地方還不

原创 【操作系統-存儲器管理】簡單的clock置換算法的實現

分析:clock置換算法是利用循環隊列來實現的。操作系統課本上的講解時這樣的 代碼實現: #include<iostream> using namespace std; typedef struct numbernode {   int

原创 【ACM】華爲-2012-校園招聘機試題

3、操作系統任務調度問題。操作系統任務分爲系統任務和用戶任務兩種。其中,系統任務的優先級 < 50,用戶任務的優先級 >= 50且 <= 255。優先級大於255的爲非法任務,應予以剔除。現有一任務隊列task[],長度爲n,task中

原创 AVL樹的旋轉操作

代碼: #include<iostream> using namespace std; #define LH +1  #define EH 0  #define RH -1  #define NULL 0    ty

原创 字符串指針與字符串數組區別

區別1: 當一個指針變量在未取得確定地址前使用是危險的,容易引起錯誤。一個錯誤的例子,如下:                  char *name;            scanf("%s",name);            pri