考虑一个字符向量pool ,其元素是(零填充的)二进制数字,最高可达max_len数字。 max_len <- 4 pool <- unlist(lapply(seq_len(max_len), function(x) do.call(paste0, expand.grid(rep(list(c('0', '1')), x))))) pool ## [1] "0" "1" "00" "10" "01" "11" "000" "100" "010" "110" ## [11] "001" "101" "011" "111" "0000" "1000" "0100" "1100" "0010" "1010" ## [21] "0110" "1110" "0001" "1001" "0101" "1101" "0011" "1011" "0111" "1111" 我想抽样n个这样的元素,其约束条件是没有任何采样元素是任何其他采样元素的前缀 (即,如果我们抽样1101 ,我们禁止11和110 ,而如果我们抽样1 ,我们禁止那些从1开始的元素,比如100等等。 […]
我已经在表格上创build了复合索引( 索引为你的math民谣),并假设它们是如何工作的。 我只是好奇,如果我的假设是正确的或不。 我假设当你列出索引列的顺序时,你也指定了索引如何分组。 例如,如果您有列a , b和c ,并且按照相同的顺序指定索引a ASC , b ASC和c ASC则结果索引本质上将是a每个“组”的许多索引。 它是否正确? 如果没有,那么结果指数究竟是什么样子呢?
我刚刚尝试了我的第一次编程面试,其中一个问题是编写一个给定7位数字电话号码的程序,可以打印每个数字可能表示的所有可能的字母组合。 问题的第二部分是如果这是一个12位数字的国际号码呢? 这将如何影响你的devise。 我没有我在面试中写的代码,但是我觉得他并不满意。 做这个的最好方式是什么?
我希望在Haskell中生成2个列表的笛卡尔积,但是我不知道如何去做。 笛卡尔产品给出了列表元素的所有组合: xs = [1,2,3] ys = [4,5,6] cartProd :: [a] -> [b] -> [(a,b)] cartProd xs ys ==> [(1,4),(1,5),(1,6),(2,4),(2,5),(2,6),(3,4),(3,5),(3,6)] 这不是一个真正的家庭作业问题,并不涉及任何这样的问题,但解决这个问题的方式可能有助于一个我坚持。
有一个Java库中的内置方法,可以计算'NselectR'的任何N,R?
尝试在Java / Swing中构build一个GUI应用程序。 我主要习惯于在Windows上用VB等工具“绘画”GUI(或者更确切地说,Gupta SQLWindows …想知道有多less人知道这是什么;-))。 我无法在Swing中find相当于Group Box的… 用一个组框,你有一个方框(通常有一个标题)围绕着一些相关的小部件。 一个例子是围绕几个单选button的组框(标题解释单选button是关于什么的,例如带有“男”和“女”的单选button的标题为“性”的组框)。 我search了一下…我发现的唯一方法是添加一个子窗格,在子窗格上设置边框,然后将“组”中的所有窗口小部件添加到子窗格中。 有没有更好的方法来做到这一点?
什么是Ruby的方式来实现以下? a = [1,2] b = [3,4] 我想要一个数组: => [f(1,3) ,f(1,4) , f(2,3) ,f(2,4)]
在C#中,我一直在做SOLID到最近的一个非常极端的水平,并在某种程度上意识到,我现在基本上没有比现在编写函数更多的东西了。 在我最近又开始研究F#之后,我认为这可能是现在我所做的大部分更合适的语言select,所以我想尝试将一个真实世界的C#项目移植到F#作为概念的certificate。 我想我可以把实际的代码(非常不习惯的方式)拉下来,但我无法想象一个架构是什么样子的,这使得我可以像在C#中一样灵活的工作。 我的意思是,我有很多使用IoC容器编写的小类和接口,而且我也使用Decorator和Composite等模式。 这导致(在我看来)非常灵活和可演化的整体架构,允许我轻松地replace或扩展应用程序的任何点的function。 根据所需更改的大小,我可能只需要编写一个新的接口实现,将其replace为IoC注册并完成。 即使变化较大,我可以replace对象图的一部分,而应用程序的其余部分就像以前一样。 现在用F#,我没有类和接口(我知道我可以,但我认为这是在我想要做实际的函数式编程),我没有构造函数注入,我没有IoC容器。 我知道我可以使用更高阶的函数来做类似Decorator模式的事情,但是这看起来不像给构造函数注入类那样具有同样的灵活性和可维护性。 考虑这些C#types: public class Dings { public string Lol { get; set; } public string Rofl { get; set; } } public interface IGetStuff { IEnumerable<Dings> For(Guid id); } public class AsdFilteringGetStuff : IGetStuff { private readonly IGetStuff _innerGetStuff; public AsdFilteringGetStuff(IGetStuff innerGetStuff) { this._innerGetStuff = innerGetStuff; } […]
当我们对列表进行sorting时,就像 a = [1,2,3,3,2,2,1] sorted(a) => [1, 1, 2, 2, 2, 3, 3] 在结果列表中,相等的元素总是相邻的。 我怎样才能完成相反的任务 – 对列表进行洗牌,以便相等的元素永远不会(或者很less)相邻。 例如,对于上面的列表可能的解决scheme之一是 p = [1,3,2,3,2,1,2] 更正式地,给定一个列表a ,生成一个置换p ,使对数p[i]==p[i+1]的数量最小。 由于列表很大,生成和筛选所有排列不是一个选项。 奖金的问题:如何有效地产生所有这样的排列? 这是我用来testing解决scheme的代码: https : //gist.github.com/gebrkn/9f550094b3d24a35aebd UPD:在这里select一个赢家是一个艰难的select,因为很多人发表了很好的答案。 @ VincentvanderWeele , @ David Eisenstat , @ Coady , @ enrico.bacis和@srgrg提供了完美无缺地产生最佳排列的function。 @tobias_k和大卫也回答了奖金问题(产生所有排列)。 大卫的正确性certificate附加点。 来自@VincentvanderWeele的代码看起来是最快的。
我需要创build一个数字组合的列表。 数字非常小,所以我可以使用byte而不是int 。 然而,它需要许多嵌套循环,以获得每一个可能的组合。 我想知道是否有更高效的方式去做我以后的事情。 到目前为止的代码是: var data = new List<byte[]>(); for (byte a = 0; a < 2; a++) for (byte b = 0; b < 3; b++) for (byte c = 0; c < 4; c++) for (byte d = 0; d < 3; d++) for (byte e = 0; e < 4; […]