lua data structure
2014-02-13 16:09
155 查看
数组 a = {} for i = 1, 1000 do a[i] = 0 end print(#a) -->1000 a = {} for i = -5, 5 do a[i] = 0 end 矩阵 mt = {} for i = 1, N do mt[i] = {} for j = 1, M do mt[i][j] = 0 end end mt = {} for i, N do for j = 1, M do mt[(i - 1)* M + j] = 0 end end 将矩阵乘以一个常数 function mult (a, rowindex, k) local row = a[rowindex] for i, v in pairs(row) do row[i] = v * k end end 链表 list = {next = list, value = v} 遍历列表 lcoal l = list while l do <> l = l.next end 队列 List = {} function List.new () return {first = 0, last = -1} end function List.pushfirst (list, value) local first = list.first - 1 list.first = first list[first] = value end function List.pushlast (list, value) local last = list.last + 1 list.last = last list[last] = value end function List.popfirst (list) local first = list.first if first > list.last then error("list is empty") end local value = list[first] list[first] = nil list.first = first + 1 return value end function List.poplast (list) local last = list.last if list.first > last then error("list is empty") end local value = list[last] list[last] = nil list.last = last - 1 return value end l = List.new() List.pushfirst(l, "sun") List.pushfirst(l, "yan") print(List.popfirst(l)) print(List.popfirst(l)) 字符串缓冲 使用函数table.concat local t = {} for line in io.read() do t[#t + 1] = line .. "\n" end local s = table.concat(t) <==> local t = {} for line in io.lines() do t[#t + 1] = line end local s = table.concat(t, "\n") print(s)
相关文章推荐
- lua学习笔记 4 迭代法遍历 table,当Table中含Table时,递归输出
- [Lua]用__index/__newindex来限制访问
- cocos进阶教程(3)Lua加密技术
- lua 打印函数调用堆栈
- D'Fusion中lua调用c++生成的dll库,并且lua调用c++代码(遍历文件夹中整个目录)
- Data Structure:两栈共享内存
- Lua_Lua中的数学库总结
- thrift的lua实现
- lua if条件语句的实现
- cocos2d-x 3.1.1 lua 翻转方块 Flips Blocks记录
- Lua(一)——类型与值
- 第一章 开始Lua
- 关于LUA里面地random数疑难
- gdb调试,lua c api返回值
- nginx利用lua实现nginx反向代理proxy_store缓存文件自删除
- Lua(3) ——Cocos之_语法糖class
- LUA require 搜索路径指定方法
- Lua基础学习
- lua开发--web实战
- C语言和Lua交互(一)