首页 > 试题广场 >

算法题 [java]:   

[问答题]

算法题

[java]:

    平行的结构转换为树形的结构:

    已知类:TreeNode

   

import java.util.ArrayList;

import java.util.List;

public class TreeNode {

    private String id;

    private String parentId;

    private List<TreeNode> children;

    //get/set…

    }

    要求:提供一个静态工具方法输入平行结构的TreeNode集合,返回梳理好上下级关系后的TreeNode集合(需要考虑多个根节点)

    如:输入的结构是:

[{id:1}, {id:2,parendId:1}, {id:3, parendId:1}]

输出的结构是:

[{id:1,children:[{id:3, parendId:1},{id:2, parendId:1}]}]


    如:id:1,pid:

    一个N*N的矩阵,每个元素都是0或者1。把给定坐标rowcol的元素设置为1后,若某元素上下左右4个紧邻的元素中有超过2个是1,则该元素也要设置成1,直到没有需要设置的为止,此时称为“稳定”状态。如:

1 0 0 1 1 0

0 1 0 0 0 0

0 0 0 1 0 0

0 1 0 0 1 0

0 0 1 0 1 0

0 0 1 0 0 1

设置 2,2,最终变为:

1 0 0 1 1 0

0 1 0 0 0 0

0 1 1 1 0 0

0 1 1 1 1 0

0 0 1 1 1 0

0 0 1 0 0 1


假设初始矩阵是稳定的,编程实现下面的函数:

int update_matrix(int matrix[N][N], int row, int col);

返回值是这次设置成1的个数。

????????😪😪😪
发表于 2019-09-21 16:40:15 回复(1)