已经有一段时间了,我无法绕过我想要制作的算法.基本上,我有两个列表,并希望获得两个列表的所有组合.
我可能不会解释它是正确的,所以这是一个例子.
name = 'a', 'b'
number = 1, 2
Run Code Online (Sandbox Code Playgroud)
在这种情况下的输出将是:
1. A1 B2
2. B1 A2
Run Code Online (Sandbox Code Playgroud)
棘手的部分是"name"变量中的项目可能比"number"变量中的项目更多(数字将始终等于或小于name变量).
我很困惑如何进行所有组合(嵌套for循环?),如果名称中的项目多于它们在数字列表中的项目,则更加混淆逻辑以移动名称变量中的项目.
我不是最好的程序员但是如果有人可以帮助我澄清逻辑/算法来实现这一点,我想我可以试一试.所以我刚刚陷入嵌套for循环.
更新:
这是3个变量和2个数字的输出:
name = 'a', 'b', 'c'
number = 1, 2
Run Code Online (Sandbox Code Playgroud)
输出:
1. A1 B2
2. B1 A2
3. A1 C2
4. C1 A2
5. B1 C2
6. C1 B2
Run Code Online (Sandbox Code Playgroud) 我一直在玩Cloudera,我在开始工作之前定义了簇的数量,然后使用cloudera管理器确保一切都在运行.
我正在开发一个新项目,而不是使用hadoop使用消息队列来分配工作,但工作结果存储在HBase中.我可能会启动10个服务器来处理作业并存储到Hbase但是我想知道我以后是否决定添加更多的工作节点我可以轻松(读取:可编程)使它们自动连接到正在运行的集群,以便它们可以在本地添加集群HBase/HDFS?
这有可能吗?为了做到这一点,我需要学习什么?
新手在这里尝试使用python做一些数据库分析.我一直收到错误:"错误:找不到Oracle软件安装"安装CX_oracle时(通过easy_install).
问题是我的本地机器上没有oracle,我正在尝试使用python连接到主oracle服务器.我已经设置了另一个程序来执行此操作(visualdb),我有一个.jar文件,我用作驱动程序,但我不知道如何在这种情况下使用它.
有什么建议?
不确定这是否是正确的问题,但我遇到了Java问题.我有一些Java代码在Java 6中工作但在Java 7中没有,错误是:
java.lang.IllegalStateException: This function should be called while holding treeLock
Run Code Online (Sandbox Code Playgroud)
使用Java6可以工作,但我们的一些外部用户正在运行Java 7.我发现错误是由调用引起的validateTree(),它在java6中工作但在Java7中我们需要调用validate().当我在本地测试时,它可以工作.
这里是我的问题,我开始在一家大公司工作,他们不会让我们对代码做任何修改,直到其被非常throughly看了看(我的工作变化,将采取在2013年4月影响),但在那之前我们的用户生气了.我不是最好的Java,并想知道是否有一种方法可以传递运行时参数来改变它?或者有什么我可以做而不触及代码库?
我很不好意思问这个问题,因为它可以通过实施修复来轻松解决,但任何想法或方向都会非常有用.
更新:我理想地寻找可以获得支持的东西,以放入java运行时参数,该参数将更改对validate()的所有validateTree()引用.