首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

寻根据1×2×2×12关系求任意数的上级主管数的算法,等待中,大分送出解决思路

2012-02-25 
寻根据12212关系求任意数的上级主管数的算法,等待中,大分送出数据关系是1×2×2×12,具体数据如下-----------

寻根据1×2×2×12关系求任意数的上级主管数的算法,等待中,大分送出
数据关系是1×2×2×12,具体数据如下

    ---------------------------------------
    |                                                                       000                                                                       |
    ---------------------------------------
    |                                 001                               |   *   |                                 028                               |
    ---------------------------------------
    |             002             |     |             015             |   *   |             029             |     |             042             |
    ---------------------------------------
    |003   004   005   006|     |016   017   018   019|   *   |030   031   032   033|     |043   044   045   046|  
    |007   008   009   010|     |020   021   022   023|   *   |034   035   036   037|     |047   048   049   050|
    |011   012   013   014|     |024   025   026   027|   *   |038   039   040   041|     |051   052   053   054|
    ---------------------------------------

用什么算法可以很快的根据任意一个数字找到它所对应的上级数字,请给出具体算法?
譬如:给出008,能找出002、001、000
            给出023,能找出015、001、000
            给出015,能找出001、000
            给出028,能找出000

            给出035,能找出029、028、000
            给出053,能找出042、028、000


******如果能根据1×2×2×12做出其它优化的方案,不按上面显示的数据排列,请给出数据排列格式和算法.

[解决办法]
树,节点存放父节点的信息
[解决办法]
你要什么语言版本的?
[解决办法]
每层一个表, 最近的上级保存起来,
依次可查出
[解决办法]
用数据库容易的很,你插入的时候把父子关系就可以求出来.


create table tb(num varchar(10),Pnum varchar(1000))
insert tb select '000 ', ' '

insert tb select '001 ', '000 '


insert tb select '028 ', '000 '

insert tb select '002 ', '000001 '
insert tb select '015 ', '000001 '
insert tb select '029 ', '000028 '
insert tb select '042 ', '000028 '

insert tb select '003 ', '000001002 '
insert tb select '004 ', '000001002 '
insert tb select '005 ', '000001002 '
insert tb select '006 ', '000001002 '
---....
select Pnum from tb where num= '003 '
drop table tb


000001002

热点排行