问题列表 - 第25586页

最小化"交换"的最小变化算法

这是一个关于非数学家的组合学的问题,所以请尽量忍受我!

给定n个不同字符的数组,我想以最小变化顺序生成k个字符的子集,即生成i + 1恰好包含一个不在第i代中的字符的顺序.这本身并不太难.不过,我也希望最大化病例数在被换角色在代I + 1是被交换相同的字符的代我.为了说明,对于n = 7,k = 3:

abc abd abe*abf*abg*afg aeg*adg*acg*acd ace*acf*aef adf*ade bde bdf bef bcf*bce bcd*bcg*bdg beg*bfg*cfg ceg*cdg*cde cdf*cef def deg dfg efg

带星号的字符串表示我想要最大化的情况; 例如,第3代中新增的e,abe,替换第2代中的新广告,abd.似乎不可能在每一代都发生这种情况,但我希望它尽可能频繁地发生.

我使用的典型阵列大小是20-30,子集大小大约5-8.

我使用的是奇怪的语言,Icon(或者实际上是它的衍生Unicon),所以我不希望任何人发布我可以直接使用的代码.但我会很感激伪代码的答案或提示,并会尽力翻译C等.另外,我注意到这类问题经常以整数数组的形式讨论,我当然可以应用解决方案以这样的方式发布我自己的问题.

谢谢

金巴斯汀

编辑2010年6月15日:

我似乎进入了比我想象的更深的水,虽然我很感激所有答案,但并非所有答案都相关.作为一个不充分的解决方案的例子,让我发布我自己的Unicon程序,以最小的变化顺序生成字符集的k元子集.要理解代码,你需要知道的事情是:前置*表示结构的大小,所以如果s是字符串,*s表示s的大小(它包含的字符数).|| 是一个字符串连接操作.一个前置!产生结构的每个元素,例如字符串的每个字符,依次连续传递.'suspend'控制结构返回一个过程的结果,但是将过程"悬浮",所有局部变量就位,这样如果在循环中调用过程,就可以产生新的结果.

procedure revdoor(s, k)  
# Produces all k-subsets of a string or character set s in a 'revolving  
# door' order. Each column except the first traverses the characters  
# available to it in alphabetical and …
Run Code Online (Sandbox Code Playgroud)

algorithm combinatorics

7
推荐指数
1
解决办法
2102
查看次数

如何使用带有cURL的响应头文件名保存文件

此问题与cURL的命令行版本有关.

我正在尝试从cgi脚本下载文件.

HTTP://someserver/perl/dl.pl ID = 2

使用浏览器,文件名为'remotefilename.gz'cURL想要将文件保存为'dl.pl?ID=2'

如何让cURL保存到响应头中带有文件名的文件?

curl

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

在Visual Studio 2010中打开.NET 2.0项目可能会遇到什么问题?

我最近工作的小型软件团队获准升级到Visual Studio 2010(我们目前正在使用VS 2005).我们在生产中有几个ASP.NET 2.0和WinForms(在.NET 2.0中)项目.

我的任务是下载VS 2010并了解它与我们当前的项目有多好.在VS 2010中定位旧应用程序时,我应该注意哪些问题?如果我在VS 2010中打开一个VS 2005项目,当我的队友重新开始在VS 2005中打开项目时,它还能很好地放置吗?我们是否必须升级项目才能在VS 2010中工作(假设项目本身未升级到.NET 4)?我可以使用VS 2010编辑旧版VB6应用程序(开玩笑)吗?

我很高兴能够使用最新的软件,但我们担心在已经正常工作的生产应用程序上遇到开发障碍.

注意:我开始获得赏金,希望得到更详细的答案.也许答案真的和已经提供的答案一样简单,但我对从使用VS 2005过渡到VS 2010的选项的更多反馈感兴趣.

.net backwards-compatibility visual-studio-2010 visual-studio .net-2.0

12
推荐指数
2
解决办法
3026
查看次数

Get-ChildItem 到 Move-Item - 找不到路径

我尝试将我的旧日志文件移动到 yyyy\MM\dd 文件夹结构

Get-ChildItem . -Recurse -Include *.log | 
Move-Item -Dest {"D:\Archive\{0:yyyy\\MM\\dd}\{1}" -f $_.LastWriteTime, $_.Name} -Force
Run Code Online (Sandbox Code Playgroud)

但我收到一个未找到路径的错误。

更新

源路径似乎不是问题。看起来使用-ForceonMove-Item不会创建丢失的目标目录。


子问题:如果没有 Get-ChildItem,也可以这样做吗?

powershell

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

Objective-C:如何正确使用内存管理进行异步方法

我需要调用一个启动一些异步代码的方法

MyClass* myClass = [[MyClass alloc] init];
[myClass startAsynchronousCode];
Run Code Online (Sandbox Code Playgroud)

现在我不能简单地释放它,因为这会导致错误,因为代码仍在运行:

[myClass release];  // causes an error
Run Code Online (Sandbox Code Playgroud)

处理内存的最佳方法是什么?

asynchronous memory-management objective-c

8
推荐指数
1
解决办法
444
查看次数

在页面上编写多个单独的<script>是正确的吗?

在编写JavaScript代码时,我将每个代码块与<script>标签分开

<script type="text/javascript">
 //---- code block 1--------- 
</script>   

<script type="text/javascript">
    ----code block 2-----
</script>

<script type="text/javascript">
$(document).ready.(function(){
 // code block3
});
</script>
Run Code Online (Sandbox Code Playgroud)

我想知道<script type="text/javascript"></script>在同一页面上单独编写是一种好习惯

- 要么 -

我们必须在一个下编写所有JavaScript代码 <script>

每种方式的技术差异是什么?

javascript performance

7
推荐指数
1
解决办法
4901
查看次数

为什么第一次在 Eclipse 中不运行为工作?

当我第一次尝试使用快捷键 Alt+Shift+X,J(或 E)运行 java(或 Eclipse)应用程序时,打开 Eclipse(Galileo) for Java(甚至 Java EE)时,应用程序将无法运行直到我使用菜单。您是否观察到同样的问题,因此这是 Eclipse 的问题,或者我做错了什么?

eclipse

5
推荐指数
1
解决办法
267
查看次数

C#中的动态类创建

是否有可能在运行时从DataTable创建一个类,其中ColumnName将是动态类属性?

c# class dynamic

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

为什么我不能使用"Type"在C#中创建新变量?

int number = 5;

Type dynamicType = number.GetType();    // dynamic type is "int"

dynamicType x = (number as dynamicType);
Run Code Online (Sandbox Code Playgroud)

c# types

1
推荐指数
2
解决办法
186
查看次数

ORM支持不可变类

哪个ORM支持不可变类型的域模型?

我想写下面的类(或Scala等价物):

class A {
  private final C c; //not mutable

  A(B b) {
     //init c
  }

  A doSomething(B b) {
     // build a new A
  }
}
Run Code Online (Sandbox Code Playgroud)

ORM必须使用构造函数初始化对象.因此可以在构造函数中检查不变量.默认构造函数和字段/ setter访问intialize是不够的,并且使类的实现变得复杂.

应支持使用集合.如果更改了集合,则应从用户角度创建副本.(渲染旧的集合状态陈旧.但用户代码仍然可以工作(或至少读取).)就像持久数据结构一样.

关于动机的一些话.假设您有一个FP风格的域对象模型.现在,您希望将其保留到数据库中.你是谁做的?你希望在纯粹的功能样式中尽可能多地做到这一点,直到邪恶的一面效果进入.如果你的域对象模型不是不可变的,你可以例如不在线程之间共享对象.您必须复制,缓存或使用锁.因此,除非您的ORM支持不可变类型,否则您在选择解决方案时受到限制.

java orm types hibernate scala

28
推荐指数
2
解决办法
4247
查看次数