多维数组与一维数组的相互转换

来源:互联网 发布:mysql insert 单引号 编辑:程序博客网 时间:2024/05/05 12:44


首先感谢 段瘦同学提供核心算法!

周五在上班的时候,遇到一个问题。如下:(实际是想把三维数组转存到一维数组中的简化)


到这里,你可能感觉不屑,啥JB玩意,好像很简单。 好吧,那你先试试看,无果,再往下浏览。

后来,我想,其实再定义一个变量就行了啊。 但显然是菜鸟式的、傻瓜式的解法。如下:


对此不多说。


我感觉是有公式,直接用ijk完全能表示出来。

纯粹的数学问题啊。

于是,问了同学、同事,以及各种技术讨论QQ群。都不会。

后来,段瘦同学,发来了她的解法。验证后,完美无误。如下:


更多维的一样,比如四维的, 如下:


剩下的琢磨下原理,自行脑补。

啊,有了这个公式就牛逼了啊。

我可以 将三维数组转为一维数组了,如下:




一维数组转成多维 差不多一样,写反就行了,如下:



好了,多维转一维、一维转多维都可以了。
有时间再琢磨琢磨 多维转多维。
共勉!

凹,对了,本文用Lua写的,只是方便起见。 算法和语言无关。



0 0
原创粉丝点击