• Lua初学习 9-14_01 数据结构 ---> 数组与矩阵


    1:直接用table声明并初始化一个数组

         arr = {1,2,3,4,5,6,7}       ------> index 从 1 开始

    2:循环创建一个数组

    arr = {}

    for i =1, 1000 do

        arr[i] =0

    end

    ------>拿到数组长度 #arr(即时arr index从 -100 或者 99开始,#arr返回的都是1000)  这里的数组初始化value全部为0  

           

    3:创建一个矩阵

    matrix = {}

    --声明一个 M 行 N 列的矩阵

    for i = 1, M do

         matrix[i] = {}

         for j = 1 , N do

         matrix[i][j] = i*j

          end

    end

    --接下来输出第X行 第Y列
    print(matrix[1][1] .. matrix[1][2] .. matrix[1][3])
    print(matrix[2][1] .. matrix[2][2] .. matrix[2][3])
    print(matrix[3][1] .. matrix[3][2] .. matrix[3][3])

    ------->如果 M = 3 ; N = 3

    ------->输出:1 2 3

                         2 4 6

                         3 6 9  

    ===============下面创建一个金字塔矩阵================

    matrix = {}

    for i = 1, 3 do  --行数当然是多行

         matrix[i] = {}

         for j = 1, i do --列从1 到 i 的最大值

         matrix[i][j] = i*j

         end

    end

    --接下来输出第X行 第Y列
    print(matrix[1][1])
    print(matrix[2][1] .. matrix[2][2] )
    print(matrix[3][1] .. matrix[3][2] .. matrix[3][3])
    print(matrix[1][10])

    ------>输出: 1          2 4        3 6 9       nil

     

    4:合并索引矩阵

    matrix = {}

    for i =1, 3 do

         for j = 1, 3 do

         matrix[(i-1)*10+j] = i*j

         end

    end

    --接下来输出所有k v

    for k in pairs(matrix) do

        print(k,matrix[k])

    end

    -------->输出:  (顺序有些不对  Lua的问题;当然也可以不遍历输出就不会错位)

    1 1
    2 2
    3 3
    11 2
    13 6
    21 3
    12 4
    23 9
    22 6

  • 相关阅读:
    读写文件
    c++ 中的 -> :: : .
    CDH安装步骤
    MySQL安全配置向导mysql_secure_installation详解
    Linux下彻底卸载mysql详解
    安装mysql警告: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
    为Hadoop集群选择合适的硬件配置
    利用cm压缩包手动安装cm和cdh
    CM5.11与CDH5.11安装使用说明
    法的本体
  • 原文地址:https://www.cnblogs.com/cocotang/p/5870645.html
Copyright © 2020-2023  润新知