- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我遇到了以下问题:
Given an unsorted array
B[1 . . 2n+1]
of real numbers, give a linear time algorithm that outputs a permutationA[1..2n+1]
ofB
such thatA
is a wiggly.
我基本上做了一个合并排序并改变了它:
MergeSort(a,n)
int i=2;
while (i ≤ n)
{
Swap(a[i−1], a[i]);
i=i+2;
}
但时间复杂度为 O(nlogn) + O(n)
(分别来自排序和循环),产生 O(nlogn)
。但我想在 O(n)
时间内完成。
我是否应该使用计数排序/基数排序/桶排序来获得线性时间,然后对其进行修改以获得一个摇摆不定的数组?
最佳答案
有一个简单的线性解决方案:
for i = 2 ... 2 * n - 1:
if i % 2 == 0 and a[i] < a[i - 1] or i % 2 == 1 and a[i] > a[i - 1]:
swap(a[i], a[i - 1])
正确性证明:
让我们使用归纳法:
基本情况:只处理一个元素,不违反任何约束。
步骤:if i % 2 == 0
:如果我们在这一步不交换任何东西,前缀仍然有效。否则,我们会遇到以下情况:a[i - 2] >= a[i - 1] > a[i]
。当我们进行交换时,我们可以看到 i - 2
和 i - 1
元素没有违反约束,并且最后一个位置是固定的。对于奇数 i
,情况类似。
关于arrays - 如何输出 B 的排列,使得 A 是一个摆动的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28567334/
如何实现模拟钟摆运动的 UIView(在本例中为 ImageView )的动画?我希望它从左向右摆动并重复。 最佳答案 [UIView animateKeyframesWithDuration:0.3
我有一个图像按钮,我想在触摸它时摇动/摆动。我希望它以类似于 iPhone 应用程序图标的方式摆动,当它们被按下很长时间时。 谢谢! 最佳答案 尝试使用这个: 关于androi
我已经在互联网上搜索了一段时间,没有任何解决方案。我想知道的是如何在 OpenGL(或 DirectX)中的 3D 相机中实现摆动/摆动运动,就像您在 Minecraft、使命召唤等中找到的那样。我试
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 6 年前。 Improve this qu
我正在尝试创建一个带有振荡弦和质量的钟摆,预计会振荡一段时间然后停止。从我写的来看,质量无法停止振荡。请帮助我。 import pyglet import pymunk imp
我正在尝试实现我自己的色轮选择器,我正在使用 this color wheel , 作为基础。我(终于)成功地添加了 RGB slider 。因此,现在当您更改色轮颜色时,RGB slider 会动态
我正在尝试针对 iPhone 优化我们的新闻页面。我注意到的一个问题是我能够点击并水平移动页面(即摆动)。 我的问题是,如何防止这种水平移动发生? 我们所有的新闻页面都有这个问题。这里有几个例子: W
我创建了一个如下所示的 anim.xml 文件来像在 android 中晃动 IOS 图标一样晃动 imageview。但是它并没有为我提供相同的结果。有没有更好的办法? 最佳答案 尝试设置 an
我想使用 setComponentPopupMenu()。但是 Scala.Swing.Component 似乎没有所有 JComponent 方法,尽管文档中引用了 javax.swing.JCom
http://eusville.com/eusVote/1/baltimore-sushi 点击“添加评论/评分”按钮。当评论框向下滑动时,页面会摆动。我很困惑。谷歌搜索但找不到解决方案。 奇怪的是问
我是一名优秀的程序员,十分优秀!