求一个动态加载TREEVIEW最快算法(100)

  • 主题发起人 主题发起人 super-ljc
  • 开始时间 开始时间
S

super-ljc

Unregistered / Unconfirmed
GUEST, unregistred user!
有一个access数据表 字段为 bookid 自然编号 booktype 图书分类 bookid 图书编号 ,bookname 图书名称 记录总数有20000多条,求一个最快速加载到treeview 树中的算法。用递归的方法在我的计算机中至少要10多秒。
 
才2万条不至于这么慢吧?
 
参考我的树形表读入TreeView 最快最简单的方法(原创)http://blog.sina.com.cn/s/blog_426dbc190100l4vj.html
 
1、使用数组bookarray,把记录按booktype排序读入数组bookarray2、使用二分法写一个函数,根据给出的booktype找出数组bookarray中最小和最大下标,关键是这里3、使用递归添加到TreeView时,添加子Node使用上面的函数查找子Node记录酷睿E6300,1.86G, 15000条记录,仅AddNode使用时间约500ms,不含从数据库读入到数组的时间。
 
最快的办法就是只加载用户需要的没必要全部加载进去,用户一下子也看不了这么多。比如用户进来时只看到第一级,点节点展开的时候在加载指定节点的下级数据。
 
最快的是分步加载。http://www.delphibbs.com/delphibbs/dispq.asp?lid=3951307
 
后退
顶部