主题:特定排序条件搜索算法问题
特定排序条件搜索算法问题:
给定一个列表如下, 假定根据 Col2,Col3, Col4, Col5,列表已经排好序(字符序),
给定一个(Col1, Col2, Col3,Col4, Col5), 譬如( C1, Z, 6,9, 4 ), * 可以认为跟任意值相等, 如何最快的找到列表中第一个相等的项?
Col1 Col2 Col3 Col4 Col5
------- ------- ------- ------- -------
(C3 A 3 4 7)
(C3 * 3 * 2)
(C3 * 3 * 1)
(C2 M 1 5 2)
(C2 L 1 * 1)
(C2 * 7 3 8)
(C2 * 7 * 2)
(C2 * 7 * 1)
(C2 * 1 8 6)
(C2 * 1 * 2)
(C2 * 1 * 1)
(C1 B 7 8 5)
(C1 A 7 * 2)
(C1 * 7 * 1)
(C1 * 6 9 4)
(C1 * 6 * 2)
(C1 * 6 * 1)
(C1 * 1 7 3)
(C1 * 1 * 2)
(C1 * * * 1)
(C0 M 3 * 2)
(C0 L 3 * 1)
(C0 K 3 * 2)
(C0 J 3 * 1)
(C0 I 3 * 2)
(C0 H 3 * *)
(C0 G 3 * 2)
(C0 F 3 * 1)
(C0 E 3 * 1)
(C0 B 3 * 2)
(C0 A * * 1)
(C0 * 7 * 3)
(C0 * 7 * 2)
(C0 * 7 * 1)
(C0 * 3 * 3)
(C0 * 3 * 2)
(C0 * * * *)
(B3 * 3 * 3)
(B3 * 3 * 2)
(B3 * * * 1)
…………
最简单算法线性查找, 给=赋予新的含义, 复杂度n, 因为有特定的序,我考虑过改造二分,不过想了好久没啥解决方案
回复时引用此帖
给定一个列表如下, 假定根据 Col2,Col3, Col4, Col5,列表已经排好序(字符序),
给定一个(Col1, Col2, Col3,Col4, Col5), 譬如( C1, Z, 6,9, 4 ), * 可以认为跟任意值相等, 如何最快的找到列表中第一个相等的项?
Col1 Col2 Col3 Col4 Col5
------- ------- ------- ------- -------
(C3 A 3 4 7)
(C3 * 3 * 2)
(C3 * 3 * 1)
(C2 M 1 5 2)
(C2 L 1 * 1)
(C2 * 7 3 8)
(C2 * 7 * 2)
(C2 * 7 * 1)
(C2 * 1 8 6)
(C2 * 1 * 2)
(C2 * 1 * 1)
(C1 B 7 8 5)
(C1 A 7 * 2)
(C1 * 7 * 1)
(C1 * 6 9 4)
(C1 * 6 * 2)
(C1 * 6 * 1)
(C1 * 1 7 3)
(C1 * 1 * 2)
(C1 * * * 1)
(C0 M 3 * 2)
(C0 L 3 * 1)
(C0 K 3 * 2)
(C0 J 3 * 1)
(C0 I 3 * 2)
(C0 H 3 * *)
(C0 G 3 * 2)
(C0 F 3 * 1)
(C0 E 3 * 1)
(C0 B 3 * 2)
(C0 A * * 1)
(C0 * 7 * 3)
(C0 * 7 * 2)
(C0 * 7 * 1)
(C0 * 3 * 3)
(C0 * 3 * 2)
(C0 * * * *)
(B3 * 3 * 3)
(B3 * 3 * 2)
(B3 * * * 1)
…………
最简单算法线性查找, 给=赋予新的含义, 复杂度n, 因为有特定的序,我考虑过改造二分,不过想了好久没啥解决方案
回复时引用此帖