成都网站建设设计

将想法与焦点和您一起共享

kd树java代码实现 kd树 python代码

如何用java语言计算编程计算: C_7^1+C_7^2+C_7^3+C_7^4+C_7^7+C_?

要计算这个组合数之和,可以使用Java中的组合数公式,即C(n, m) = n! / (m! * (n-m)!)。首先我们可以使用循环和递归的方式来计算组合数:

成都网站建设、网站设计的关注点不是能为您做些什么网站,而是怎么做网站,有没有做好网站,给创新互联一个展示的机会来证明自己,这并不会花费您太多时间,或许会给您带来新的灵感和惊喜。面向用户友好,注重用户体验,一切以用户为中心。

public class Main {

public static void main(String[] args) {

int sum = 0;

for (int i = 1; i = 4; i++) {

sum += combination(7, i);

}

sum += combination(7, 7);

System.out.println(sum);

}

public static int combination(int n, int m) {

if (m == 0 || m == n) {

return 1;

}

return combination(n-1, m-1) + combination(n-1, m);

}

}

在这个代码中,我们使用了循环遍历C7^1到C7^4这四个组合数,并且计算它们的和。然后,我们再计算C7^7,并把它的结果加入到总和中。

在计算组合数时,我们使用了递归的方式实现组合数公式。具体来说,当m为0或n时,组合数为1。否则,我们使用递归调用来计算C(n-1, m-1)和C(n-1, m),然后将它们相加得到结果。

上述代码的输出结果为:924。

java递归查询子节点,按给的示例代码实现

代码如下:

import java.util.ArrayList;

import java.util.List;

class Org {

private String id;

private String name;

private String pid;

public Org(String id, String name, String pid) {

this.id = id;

this.name = name;

this.pid = pid;

}

public String getId() {

return id;

}

public void setId(String id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getPid() {

return pid;

}

public void setPid(String pid) {

this.pid = pid;

}

@Override

public String toString() {

return "Org [id=" + id + ", name=" + name + ", pid=" + pid + "]";

}

}

public class App {

static void find(ListOrg list, String pid) {

list.stream().filter(p - p.getPid().equals(pid))

.forEach(org - {

System.out.println(org);

find(list, org.getId());

});

}

public static void main(String[] args) {

ListOrg list = new ArrayList();

list.add(new Org("111", "公司", "0"));

list.add(new Org("222", "部门", "111"));

list.add(new Org("333", "小组", "222"));

list.add(new Org("444", "员工1", "333"));

list.add(new Org("555", "员工2", "333"));

find(list, "0");

System.out.println("------------------------------------");

find(list, "111");

}

}

运行结果:

java代码怎样查出树形结构的某个节点的所有子孙节点?要算法实现!!

这样的用简单的判断就行了 :先判断PID为空的,这个是父节点,然后取出PID为空的Id当做取其子节点的父节点,一次判断就行了,结合列子:取PID为空的ID即1,2,然后把取PId等于1和2的ID即345和6然后分别挂在1和2下,345就是1的子节点,6是2的子节点,有多节点的一次类推(这只是其中一个简单的方法)

java问题 1,2,3 8,9,4 7,6,5 这种逻辑通过java代码怎么实现,怎么写

代码:

package com.ufotable.test;

public class Test30 {

private static int l,r,u,d;//定义上下左右边界

private static int[][] a=new int[0][0];//数组

private static int y=0,x=0;//初始化坐标

private static int step,temp;//步长,上一个数组的值

private static void add(int y,int x){

temp+=step;a[y][x]=temp;

}

private static void left(){

while(xl)add(y, --x);//未遇到左边界

if(yu){//遇到左边界且未遇到上边界

l++;up();

}

}

private static void right(){

while(xr)add(y, ++x);//未遇到右边界

if(yd){//遇到右边界且未遇到下边界

r--;

down();

}

}

private static void up(){

while(yu)add(--y, x);//未遇到上边界

if(xr){//遇到上边界且未遇到右边界

u++;

right();

}

}

private static void down(){

while(yd)add(++y, x);//未遇到下边界

if(xl){//遇到下边界且未遇到左边界

d--;

left();

}

}

private static void fun(int start,int step,int length){//产生数组(起始值,步长,矩阵边长)

Test30.step=step;

l=u=0;r=d=length-1;

a=new int[length][length];

a[0][0]=temp=start;

up();

}

public static void print(){//输出矩阵

for(int i=0;ia.length;i++){

for(int j=0;ja.length;j++){

System.out.print(a[i][j]+"\t");

}System.out.println();}

}

public static void main(String[] args) {

fun(0,1,10);//测试

print();

}

}

输出结果:


网页标题:kd树java代码实现 kd树 python代码
本文网址:http://chengdu.cdxwcx.cn/article/dddchso.html