原创 專業408科目概括

計算機系統由硬件和軟件組成                 按功能將計算機分層可分爲以下七層:                      編程語言:語言只是工具,Niklaus Wirth‘book “program = data str

原创 不開闢內存空間逆置鏈表

在鏈表的逆置問題中要解決的問題: 1.第一個結點的指針域要置NULL; 2.中間結點的指針域要向前一個結點; 3.頭節點要指向鏈表的尾端; 4.要求不開闢內存空間 主要思想: 1.判斷該鏈表是否爲空或只有一個結點,若是則無需逆置 2.創建

原创 Unhandled exception :Integer overflow

錯誤問題:V c++混合編程idiv有符號除法導致Integer overflow 解決:idiv前確保edx爲Zero          異或edx 或 cdq 將累加和的eax符號擴展到edx,執行後edx爲0 #include <

原创 HuffmanTree和HuffmanCode

HuffmanTree和HuffmanCoding 1.HuffmanTree HuffmanTree又稱爲最優二叉樹,是一類帶權路徑長度最優的樹。 假設有n結點,權值爲{w1,w2,…,wn},構造一顆有n個葉子結點的二叉樹,每個

原创 C語言實現隊列的順序存儲

隊列  #1. 隊列不得和棧比較,棧是一種先進後出的線性表,而隊列是一種先進先出 (first in first out,縮寫 FIFO) 的線性表.  #2. 它只允許在表的一端進行插入,而在另一端刪除元素。  #3. 在隊列中插入的一

原创 算法實現:判斷二叉樹是否爲完全二叉樹

1.什麼是完全二叉樹 對滿二叉樹的結點進行連續編號,約定編號從根結點起,自上而下,自左而右。 若一棵深度爲k的,有n個結點的二叉樹,當且僅當其每一個點都與深度爲k的滿二叉樹(2^k - 1 個結點)中編號爲1到n的的結點一一對應時稱之爲完

原创 c實現鏈式存儲二叉樹

#1二叉樹     (1) 二叉樹是一種樹型結構     (2) 二叉樹的特點:每個結點至多隻有兩棵子樹,並且有左右子樹之分。 可以使用順序存儲或鏈式存儲二叉樹 #1.1順序存儲二叉樹 #define MAX_BINARYTREE_SI

原创 c/c++在數據結構中結構體和參數傳遞的問題

在用c/c++寫數據結構時總會遇到種種問題, c中沒有引用,c++繼承c後添加的引用,那用上&我們寫的還是c嗎,我們可以強行理解爲c++中的c 1.不理解結構體定義 2.不理解參數傳遞 3.對指針和引用的理解 例: typedef str

原创 大整數加減乘除

用指定位數的數組存儲大整數,每一位對應一位,若大整數長度小於數組長度,索引已0開始的稱高位,高位補零 即int a[10]存儲數值爲:123456 a[0]  a[1]  a[2]  a[3] a[4]  a[5]  a[6]  a[7]

原创 c實現大整數存儲x^n

c實現x^n,無符號int(4 byte)類型最大隻能存儲 值爲2^32-1的整形,若是我們在int型或long(8 byte,正max 2^64 -1)型最大之外數我們如何存儲,這是我們採取多位數組存儲大整數,完成pow函數,並基本類型

原创 排序算法

常見的排序算法 交換兩變量的值swap函數 void swap(int *a,int *b){ if(a == b) return; //當兩指針指向同一地址時,*a = *a^*a; 1^1==0 ,異或本身爲0 //if(*a

原创 python調用C傳參整形,字符串,結構體,數組

python調用c程序像JNI樣LoadLibrary(“xx.dll or xx.so"),也能使用boost工具,swig工具將c程序封裝爲Module,直接import使用 這裏使用的爲LoadLibraray方法調用動態鏈接庫中函

原创 linux環境c/c++實現ls,ls -l

My_ls.cpp //============================================================================ // Name : Hellocpp.cpp

原创 Java實現命令行文本進度

爲什麼想着去用Java去實現命令行實現進度條呢,在上Python課時,課本上有實現文本進度條的例子,老師也執行了該列子的效果,突然想到了linux,dos命令行中下載文件時的文本進度條,所以想着用java實現個進度條玩玩。 這裏科普到一個

原创 Java整數的異或運算,非運算,與運算,或運算

java語言對應數學中邏輯運算 "∧" 表示 "與" 對應java : & "∨" 表示 "或" 對應java : | "┐"表示 "非" 對應java : ~ a⊕b = (¬a ∧ b) ∨ (a ∧¬b) 異或(xor) 對應jav