小编swi*_*ams的帖子

你如何旋转二维数组?

灵感来自Raymond Chen的帖子,假设你有一个4x4二维数组,写一个旋转90度的函数.Raymond链接到伪代码的解决方案,但我希望看到一些现实世界的东西.

[1][2][3][4]
[5][6][7][8]
[9][0][1][2]
[3][4][5][6]
Run Code Online (Sandbox Code Playgroud)

变为:

[3][9][5][1]
[4][0][6][2]
[5][1][7][3]
[6][2][8][4]
Run Code Online (Sandbox Code Playgroud)

更新:尼克的答案是最直接的,但有没有办法比n ^ 2做得更好?如果矩阵是10000x10000怎么办?

algorithm matrix multidimensional-array

295
推荐指数
16
解决办法
29万
查看次数

是否可以"反编译"Windows .exe?或者至少查看大会?

我的一个朋友从Facebook下载了一些恶意软件,我很想知道它的作用而不会感染自己.我知道你不能真正反编译.exe,但我至少可以在Assembly中查看它或附加调试器吗?

编辑说它不是.NET可执行文件,没有CLI标头.

debugging assembly winapi decompiling

222
推荐指数
10
解决办法
51万
查看次数

未找到Razor HtmlHelper Extensions(或其他视图命名空间)

Dunno如果在PR或Beta中发生这种情况,但如果我创建了一个扩展方法HtmlHelper,则在Razor驱动的页面中无法识别:

namespace SomeNamespace.Extensions {
    public static class HtmlExtensions {
        public static string Foo(this HtmlHelper html) {
            return "Foo";
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我把它添加到以下<Namespaces>部分Web.config:

<pages>
  <namespaces>
    <add namespace="System.Web.Mvc" />
    <!-- snip -->
    <add namespace="SomeNamespace.Extensions"/>
  </namespaces>
</pages>
Run Code Online (Sandbox Code Playgroud)

但是在尝试查看页面时会抛出编译错误:

@Html.Foo()
Run Code Online (Sandbox Code Playgroud)

如果我使用WebForms重新创建页面,它可以正常工作.这是怎么回事?

解决方法

如果我@using SomeNamespace.Extensions在我的Razor视图中包含它,那么它可以工作,但我更愿意将它包含在内Web.config

extension-methods html-helper razor asp.net-mvc-3

166
推荐指数
4
解决办法
12万
查看次数

Python中的round()似乎没有正确舍入

round()函数的文档声明您传递一个数字,并将小数点后的位置传递给round.因此它应该这样做:

n = 5.59
round(n, 1) # 5.6
Run Code Online (Sandbox Code Playgroud)

但是,实际上,良好的旧浮点怪异爬进来,你会得到:

5.5999999999999996
Run Code Online (Sandbox Code Playgroud)

出于UI的目的,我需要显示5.6.我在互联网上搜索并发现一些文档,这取决于我的Python实现.不幸的是,这发生在我的Windows开发机器和我尝试过的每台Linux服务器上.在这里也看到.

没有创建我自己的圆形库,有什么方法可以解决这个问题吗?

python floating-point rounding

114
推荐指数
9
解决办法
21万
查看次数

如何列出SQL Server表的主键?

简单的问题,如何使用T-SQL列出表的主键?我知道如何在表上获取索引,但不记得如何获取PK.

sql t-sql sql-server

94
推荐指数
7
解决办法
17万
查看次数

RVM在ZSH中不起作用

我想在我的Mac上试用ZSH shell,但我也做了很多Ruby和Rails开发,所以我也使用了RVM.问题是我似乎无法使RVM在ZSH中工作,并且它在默认的Bash shell中工作正常:

> zsh
> rvm 1.9.2
> ruby -v
ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]
> which ruby
/usr/bin/ruby
Run Code Online (Sandbox Code Playgroud)

我肯定可以确认已安装RVM,以及RVM下的ruby 1.9.2; 我一直在Bash中使用它.rvm list在ZSH中运行显示了这一点,有趣的是:

rvm rubies

   ruby-1.8.7-p302 [ x86_64 ]
=> ruby-1.9.2-p0 [ x86_64 ]
Run Code Online (Sandbox Code Playgroud)

这种情况发生在我的iMac和MacBook Pro上.我在两者上使用OS X 10.6.6,在iMac上使用ZSH 4.3.9(笔记本电脑上的4.3.10).没什么好像哦 - 我 - zsh还没有.

我试着查看RVM 网站上的文档,但没有任何帮助.

ruby macos zsh rvm

91
推荐指数
3
解决办法
5万
查看次数

使用TFS创建修补程序

在SubVersion中创建补丁非常简单,使用Tortoise,右键单击并选择Create Patch.但对于我的生活,我在TFS中找不到这个功能.这可能吗?

如果没有,在开源TFS托管项目(la CodePlex)中提交补丁的标准方法是什么?

version-control tfs patch

58
推荐指数
2
解决办法
2万
查看次数

TortoiseGit准备好迎接黄金时段了吗?

我是TortoiseSVN简约的忠实粉丝.我也有兴趣挖掘git,并认为它将适合即将开展的项目.但是,基于命令行的严格应用程序可能会有点吓人.我已经跟踪了TortoiseGit项目一段时间,看起来它们已经超过了1.0.

现在有没有人在野外使用它?它是如何运作的?它能让你使用git中的所有功能吗?

git version-control tortoisegit

41
推荐指数
3
解决办法
9189
查看次数

嵌入式系统最差的做法

在开发嵌入式系统时,您会考虑"最差实践"?

我对不该做的一些想法是:

  • 避免抽象硬件层,而是在整个代码中扩展硬件访问.
  • 没有任何类型的仿真环境,只有exe/cute的实际硬件.
  • 避免单元测试,可能是由于以上两点
  • 不在分层结构中开发系统,因此较高层可能依赖于调试和工作的较低层功能
  • 选择硬件而不考虑将使用它的软件和工具
  • 使用专为简化调试而设计的硬件,例如无测试点,无调试LED,无JTAG等.

    我确信那里有很多好的想法,不该做什么,让我们听听他们!

  • embedded anti-patterns

    39
    推荐指数
    6
    解决办法
    3917
    查看次数

    您最推荐的Visual Studio首选项是什么?

    Microsoft Visual Studio中有很多小选项和设置.您向其他人推荐哪些调整?

    visual-studio-2008 visual-studio

    36
    推荐指数
    8
    解决办法
    5254
    查看次数