前几天帮小伙伴解决一个问题的时候,给他讲了半天然后他还是没弄好。然后我就直接让他把代码给我,然后我研究了一会解决了。觉得思想这个东西挺重要的,所以提出来。
问题是一个穿梭框的组件,要实现的东西是能把左边选择的内容移到右边。或者把右边选择的内容移回到左边。最终要获得的是那个元素移动过。关于这个问题一开始我想的是左边到右边需要知道左边那个元素到了右边。同时右边也要知道哪个元素到了左边。还涉及到最初的数据显示问题,数据回显会默认显示数据。好了听了这个多描述该是乱得很。数学思维就是很重要的了。接下来我要将数学和编程如何结合。
在以前读书期间有种思维一直陪伴着我,就是凡是取个例子,这样可能对总结出问题所在很有帮助。对于上面描述的内容·其实是[1,2,3] [1]的问题 。假如说[1,2,3]是最初左边穿梭框的内容 [1]是一开始被选择过去的。我们现在进行移动生成 [1,2,3] [2,3] 显而易见 是1回去了 2 3 过来了。那我们要传给后台改变的内容就是1 2 3。问题是·我们是如何得出这个结论的·。其实就是如何解决这个数学问题的。那就简单明了了。可以把改变前的右边的数组看成一集合,改变后的数组看成一集合。然后最终取集合去掉交集的那部分(这叫补集?)好了转化成功。。。为什么要发这篇文章是想说数学还是对编程挺重要的。那个小伙伴数学可比我好太多。所以给大家提供一下思路,在编程的时候可以运用实例将问题传化为数学问题。