首页 > 代码库 > 初学LUA—实现上楼梯算法
初学LUA—实现上楼梯算法
题目:楼梯有n阶台阶,上楼可以一步上1阶,也可以一步上2阶,编一程序列出每一种走法。
要求是使用递归和迭代两种不同的方法来实现。对于我这个算法又渣也没接触过LUA的人来说,真是有点脑子不够用了!!
‘
捣鼓了一整天,了解LUA语法,各种google百度,暂且只能弄出递归解法,至于迭代,还得好好理解理解!
--递归 function walkStairs(remainingSteps,currentSteps) if remainingSteps<=2 then printWalkWays(remainingSteps,currentSteps) else for step=1,2 do walkStairs(remainingSteps-step,currentSteps .." " ..step) end end end function printWalkWays(remainingSteps,currentSteps) if 1==remainingSteps then print(currentSteps .." 1") elseif 2==remainingSteps then print(currentSteps .." 1 1") print(currentSteps .." 2") else print(currentSteps) end end print("enter a number:")n=io.read("*number")print(n .."层楼梯的走法有以下几种:")io.write(walkStairs(n," "))
再改进了下,可以由用户输入数字,确定总共有几阶楼梯
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。