寻根据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