zoukankan      html  css  js  c++  java
  • Lua队列问题

    今天看到Lua程序设计第11章了,表示按照书中的例子打出来,但是不知道正确写用:

    List = {}
    function List.new ()
        return {first = 0, last = -1}
    end
    
    function List.pushleft (list, value)
        local first = list.first - 1
        list.first = first
        list[first] = value
    end
    
    function List.pushright (list, value)
        local last = list.last + 1
        list.last = last
        list[last] = value
    end
    
    function List.popleft (list)
        local first = list.first
        if first > list.last then error("list is empty") end
        local value = list[first]
        list[first] = nil    -- to allow garbage collection
        list.first = first + 1
        return value
    end
    
    function List.popright (list)
        local last = list.last
        if list.first > last then error("list is empty") end
        local value = list[last]
        list[last] = nil     -- to allow garbage collection
        list.last = last - 1
        return value
    end
    
    list = {}
    list = List.new
    for i=1, 10 do
    	List.pushleft(list, i)
    end
    
    value = List.popleft(list)
    while value do
    	print(value)
    	value = List.popleft(list)
    end
    

      先记录下来,但还不知道问谁呐

  • 相关阅读:
    第二次作业
    国庆节假期作业1
    memoize使用实例之创建XHR
    javascript 函数式编程(3)
    javascript 异步循环 asyncEach
    c++ 精简版 序列化
    javascript 函数式编程(4)
    javascript setZeroTimeout
    c++ 精简版 thread
    PHP Memoization
  • 原文地址:https://www.cnblogs.com/xiangshancuizhu/p/3330162.html
Copyright © 2011-2022 走看看