发布网友 发布时间:2022-04-23 23:14
共1个回答
热心网友 时间:2022-04-19 06:12
我现在保存的方式是有很大问题的,望高手们能给一个算法优化我的代码
页面上有无*div行数的数据,比如
name order
a 1
b 2
c 3
d 4
e 5
f 6
1、首先把b拖到a前面,我的做法是当遇到最顶端的数值时把他们的序号1/2=0.5
2、把b拖到c和d之间,做法是把(3+4)/2=3.5
3、把b拖拽到f后面,当遇到最末端的数值时把他们的序号6+1=7
这时候把3种情况name为b的序号值保存进数据库,下次刷新排序之后的结果看起来是没有问题的
但这玩意用久了,也就是说给管理员拖了很多次b的数据之后会不停的上下相加然后相除,虽然序号我定义的是double类型,但已经去到-28E位数,记得到-32E就会超出double的长度。所以我觉得我这样做是绝对只能是用一时的半成品,功能的要求又想实时拖拽,实时保存进数据库,而不想点击按钮来统一保存。
请教朋友们有没有比较好的算法来处理这种问题,有人提出用链表,但我还是理解不得,具体做法追问为什么复制我的问题啊?