【发布时间】:2010-01-03 17:03:18
【问题描述】:
我想了很多,但还没有真正想出什么。
假设我想要一个 m X n 的元素集合,该集合可按 O(m*n) 下的任何列和任何行排序,并且还能够插入或删除 O(m+n) 或更小的行...有可能吗?
我想出的是一个链接网格,其中节点被插入到一个向量中,所以我有它们的索引,并索引第一行和第一列以消除在任何一个方向上遍历列表的必要性.使用我的方法,我已经实现了上述复杂性,但我只是想知道是否可以通过非常数因子进一步降低它。
可排序性示例:
1 100 25 34
2 20 15 16
3 165 1 27
按第三行排序:
25 1 34 100
15 2 16 20
1 3 27 165
按第一列排序:
1 3 27 165
15 2 16 20
25 1 34 100
【问题讨论】:
-
不,一点也不。我的数据结构课是去年。但如果是的话,这有关系吗?我问的是解决方案还是答案?关于编程问题是否可能在一定的时间复杂度内以及使用哪些数据结构在您的道德规范中仍然可以回答的问题不是吗?为什么没有提到应用程序的问题会立即被标记为作业?
标签: c++ algorithm data-structures