表
a = { }
b = { x = 1, ["hello, "] = "world!" }
a.astring = "ni, hao!"
a[1] = 100
a["a table"] = b
function foo()
end
function bar()
end
a[foo] = bar
--分别穷举表a和b
for k, v in pairs(a) do
print(k, "=>",...
分类:
其他好文 时间:
2014-07-22 23:00:33
阅读次数:
261
问题描述: 输入一个整数,返回其二进制表示中最低的一位为1的下标值。
很多CPU都在硬件层面直接提供该指令,例如,i386的BSF指令。但是,如果硬件没有提供该指令,又当如何。来看kernel中的算法:
应用分治思想进行依序判断..... 1 int __ffs(int x) 2 ...
分类:
其他好文 时间:
2014-07-22 23:00:13
阅读次数:
336
函数环境
function foo()
print(g or "No g defined!")
end
foo()
setfenv(foo, { g = 100, print = print }) --设置foo的环境为表{ g=100, ...}
foo()
print(g or "No g defined!")
--No g defined!
--100
--No g defined!...
分类:
其他好文 时间:
2014-07-22 22:59:54
阅读次数:
338
函数闭包
function createCountdownTimer(second)
local ms=second * 1000;
local function countDown()
ms = ms - 1;
return ms;
end
return countDown;
end
timer1 = createCountdownTimer(1);
for...
分类:
其他好文 时间:
2014-07-22 22:59:53
阅读次数:
307
题意:上下两行数相连,相等的才可以相连,并且每条线必须且只能与其他一条线相交(要同时满足相交的两条线的数不相等)。问给的两行数最多可以连几条线。
解法:ans[i][j]记录着上面i,和下面j下标之后的数中最多可以连多少条,记忆化搜索dfs(0,0)就可以了。搜索时候,如果用到了i,则贪心在下面选相等的。用到j同理。
代码:/******************************...
分类:
其他好文 时间:
2014-07-22 22:59:33
阅读次数:
227
make linux在包含自 lua.h:16 的文件中,从
lua.c:15:luaconf.h:275:31: 错误:readline/readline.h:没有那个文件或目录luaconf.h:276:30:
错误:readline/history.h:没有那个文件或目录lua.c: In f...
分类:
其他好文 时间:
2014-05-01 18:57:43
阅读次数:
572
1. 调用其他的.lua文件 dofile("xx.lua");
2. 避免用 "_VERSION"这类的标识符,Lua将这类标识符用作特殊用途,通常保留"_"作为”哑变量“
3. Lua的一些保留字:
do in local nil until 等
4. 注释:-- 表示行注释 --[[ ... ]] 表示块注释
一般的块注释这样写:
--[[
...
分类:
其他好文 时间:
2014-04-30 22:34:38
阅读次数:
270
会PHP的人都知道PHP中的print_r/var_export函数,可以方便的用于打印数组或导出变量,Lua中没有提供,实际应用中却是很多时候需要类似的功能。
今天便封装了个简单函数,实现类似功能,用来打印/导出table:...
分类:
Web程序 时间:
2014-04-30 22:22:39
阅读次数:
392
Cocos2d-x 2.2.x版本使用tolua++工具绑定自定义C++方法到Lua...
分类:
其他好文 时间:
2014-04-30 22:15:38
阅读次数:
214
前序:
(二叉)堆数据结构是一种数组对象,它可以被视为一棵完全二叉树。树中每个节点与数组中存放该节点值的那个元素对应。
树的每一层都是填满的,最后一层除外。
树的根为a[1] (在这里是从1开始的,也可以从0开始),给定了某个节点的下标i,其父节点为i/2,左二子为2*i,右儿子为2*i+1。
二叉堆满足二个特性:
1.父结点的键值总是大于或等于(小于或等于)任何一个...
分类:
其他好文 时间:
2014-04-30 22:15:38
阅读次数:
434