原创 常見排序算法(歸併排序-曾經的筆記)
四、歸併排序 思想:將兩個或兩個以上的有序表組合成一個新的有序表。 兩路歸併的迭代算法: 1個元素的表總是有序的。所以對n個元素的待排序列,每個元素可看成1個有序子表。對子表兩兩合併生成 個子表,所得
原创 爲LUA封裝C/C++函數(不涉及結構體等參數形式)
四、爲LUA封裝C/C++函數(不涉及結構體等參數形式) 由上例中的int _cdecl MyCMax(lua_State* L)函數的實現,可以看出lua調用一個非lua_CFunction類型的函數的過程: (1) 爲
原创 常見排序算法(選擇排序-曾經的筆記)
三、選擇排序 1.簡單選擇排序 思想:總是從其餘部分選擇出最大或最小的記錄到有序子列中, 開始時有序子列的長度爲0,隨着每趟的選擇長度每次增加1。 從程序中可看出,簡單選擇排序移動記錄的次數較少,但關鍵碼的比較次數
原创 常見排序算法(插入排序-曾經的筆記)
一、插入排序 1.直接插入排序 思想:要將第i個記錄插入到已排好序的有序子列(由前i-1個元素組成)中,先順序查找到記錄的插入位置,然後進行插入操作,從而得到一個新的、記錄數增加1的有序表。插入位置的確定通過對有序子列中記錄按關
原创 常見排序算法(交換排序-曾經的筆記)
二、交換排序 交換排序的基本思想就是兩兩比較待排序的關鍵碼,如果遇到逆序(與目標順序正好相反) 時,就進行交換,直到所有對象都排好序爲止。常見的交換排序有:起泡排序和快速排序。 1.起泡排序 思想:從前往
原创 C/C++函數調用LUA函數
二、C/C++函數調用LUA函數 爲應用程序註冊新的C函數到Lua是擴展Lua的基本方法之一。一般本說,從Lua中調用C函數,不是指Lua可以調用任何類型的C函數。對於一個C函數來說,要調用Lua函數就必須遵循一些簡單的協議
原创 VC++6.0配置LUA環境和C++調用LUA的簡單示例
一、VC++6.0配置LUA環境和C++調用LUA的簡單示例 LUA版本: 5.1.3 (http://www.lua.org下載lua 5.13源代碼) 編譯lua 5.13源代碼:(你可下載別人編譯的,) 配置LUA環境:工具→選
原创 由數據成員地址獲取對象首地址
如果你想由數據成員地址獲取對象首地址, 可能編寫像下面的宏: // FromMember宏// 功能:由數據成員地址獲取對象首地址// 參數:class-對象類名// memberName-數據成員
原创 在LUA腳本中調用C/C++函數
三、在LUA腳本中調用C/C++函數 可以被Lua函數調用的C函數必須遵循的協議(這個協議定義了參數和結果的傳遞方式):C函數從LUA棧上按直接的順序獲取參數(第一個參數首先被push)。所以當C函數開始執行時,lua_ge