- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我得到了以下问题:
编写一个接受二维数组的函数调用 zigzag A
并返回通过遍历 A
创建的一维数组从位置 (1,1)
开始以之字形方式.
例子:
A =[1 2 3 4 5 6
7 8 9 1 3 4
3 4 5 6 3 1
3 4 5 6 7 8]
zigzag(A)
应该返回:
[1 2 3 4 5 6 4 3 1 9 8 7 3 4 5 6 3 1 8 7 6 5 4 3]
我解决它的方式,我不确定这是否是正确的方法。我很高兴知道这是否完美以及如何改进我的答案:
function B=zigzag(A)
[r,c]=size(A);
B= reshape(A’,1,:);
m=0
n=0
For r>m+2
m=m+2;
n=n+1;
For i=1:c
B(nc+i)=B(2cn-i+1);
End
End
disp(B)
最佳答案
如果它给你正确的输出,那么你肯定做对了。但是,我会做的是访问矩阵的偶数行,反转方向以便它们以相反的顺序显示,转置矩阵然后解开它。
我们转置它的原因是因为当我们在 MATLAB 中解开一个矩阵时,这意味着矩阵的列相互堆叠,从而产生一个单一的向量。我们希望行彼此堆叠,并且以相反的顺序制作偶数行将允许您执行您期望的之字形。如果你想让行堆叠在一起,你需要先转置矩阵,让行变成列,当你解开这个矩阵时,你会把行堆叠在一起,而不是创建一个单一的矢量。
像这样:
B = A; %// Make a copy
B(2:2:end,:) = fliplr(B(2:2:end,:)); %// Flip even rows
B = reshape(B.', 1, []); %// Unravel
根据你的例子,我得到:
B =
Columns 1 through 13
1 2 3 4 5 6 4 3 1 9 8 7 3
Columns 14 through 24
4 5 6 3 1 8 7 6 5 4 3
关于matlab - 如何完善我的之字形 matlab 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30069958/
昨天发布于: MySQL: Finding most frequently occuring values in table 但想知道是否有办法改进答案,因为您不必在最后重复代码来获取MAX(COUN
在开发了一个展示基本智能的简单算法后,我渴望进行递归 self 改进,我遇到的问题是由于我对递归缺乏理解。 我明白,如果我有一些东西来评估我正在使用的算法的“适应性”以进行改进(我为算法提供其自身的二
我们使用二进制 (16) 字段来存储 IP 地址。我们这样做是因为它可以同时保存 IPv4 和 IPv6 地址,并且可以轻松地与 .Net IPAddress 类一起使用。 但是,我创建了以下 SQL
我在使用 wxPython 时遇到了一些纯粹的外观问题。例如,标签和它们所代表的控件之间的关系——一切看起来总是至少偏离目标 2-3 个像素,有时甚至更糟。在我当前正在创建的对话中,我已将文本控件的字
我正在开发一个具有 UICollectionView 的应用程序 - Collection View 的工作是显示来自网络服务的数据。 我正在尝试实现的应用程序的一个功能是使用户能够将此 UIColl
我(终于!)找到了一种在玻璃上呈现 Windows.Forms 控件的方法,它似乎没有任何重大缺点,也没有任何大的实现时间。它的灵感来自 this article来自 Coded,它基本上解释了如何
我是一名优秀的程序员,十分优秀!