数字图像处理算法一维数组和二维数组变成一维数组哪个效率更高

把一个一维数组转化成二维数组的算法 - messi - ITeye技术网站
博客分类:
今天,有个同事提到了把一个一维数组转化为二维数组的算法。他用了两个循环,一个用来初始化结果数组,一个用来把原数组的值填充到结果数组。我觉得,只需一个循环就可以了,说白了,这个转换就是一个映射,就是把一个一维坐标映射为一个二维坐标。
算法:
def div_arr(src_arr,div_len)
if div_len &= src_arr.size
row_index = -1
result_arr = []
src_arr.each_index{ |i|
column_index = i % div_len
if column_index == 0
row_index += 1
result_arr[row_index] = []
result_arr[row_index][column_index] = src_arr[i]
result_arr
更ruby一点的实现:
def div_arr(arr, div_len)
if div_len &= 0 or div_len == 1 or div_len &= arr.size
return [arr]
arr.each_index{ |i|
x,y = i / div_len,i % div_len
res[x] = [] if not res[x]
res[x][y] = arr[i]
更优雅的,也许是有些风险的:
class Array
def div(len)
if len &= 1 or len &= self.size
return [self]
self.each_index{ |i|
x,y = i / len, i % len
res[x] = [] if not res[x]
res[x][y] = self[i]
浏览: 49765 次
来自: 北京
很有探索精神,学过多种编程语言呀
是的。不知道别的平台是否也有类似问题。
lz在windows下编写的吧数字图像处理复习题总结_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
数字图像处理复习题总结
上传于||暂无简介
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩13页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢数字图像处理
复习_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
数字图像处理
上传于||暂无简介
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩4页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢【图文】第2章数字图像处理基础_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
第2章数字图像处理基础
上传于||文档简介
&&图像处理PPT
大小:2.24MB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢}

我要回帖

更多关于 matlab二维数组变一维 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信