关于Notice:Indirect modification of overloaded property 的问题

今天在项目中给类对象赋值的时候,发现并没有成功,仔细排查代码并没有发现逻辑错误,由于历史原因代码有些地方写的不规范,于是打开调试开关,出现Notce:Indirect modification of overloaded property的提示,大量搜索之后,问题解决,也加深了对面向对象的理解。

- 阅读剩余部分 -

算法(algorithms)基础之:归并排序的递归实现

  1. 归并排序(merge-sort)是建立在归并操作上的一种有效的排序算法,该算法采用分治法(divide and conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。
  2. 归并排序过程:比较a[i]和a[j]的大小,将第一个有序表中的a[i]复制到r[k]中,并令i和k分别加1;否则讲第二个有序表中的元素a[j]复制到r[k]中,并令j和k分别加1,如此循环下去,直到其中一个有序表取完,然后再将另一个有序表中剩余的元素复制到r中从下标k到下标t的元素,从此得到一个新的有序表。
  3. 通常来讲,我们采用递归方式实现完整的归并排序,先把原始数组a中下标[start,end]用中点mid二分,接着把左边子区间A[start,mid]排序,再把右边子区间B[mid+1, end]排序,最后再用一次归并操作把A\B合并成最终有序表C[start,end]。

- 阅读剩余部分 -

算法(algorithms)基础之:插入排序

插入排序,对于少量的元素的数据,它是一个有效的算法。它的工作方式就像许多人排序一副扑克牌。开始时,我们的左手为空并且桌子上的牌面向下。然后,我们每次从桌上拿走一张牌并将它插入左手中正确的位置。为了找到一张牌的正确位置,我们从右往左将它与已在手中的每张牌进行比较,拿在左手上的牌总是排序好的。如图:

- 阅读剩余部分 -

窗外的灯光很安静

身在天朝,这样那样的事总不让人省心,想的太多又活的太累,工作和生活的炸药在脑袋里引燃,bong~ bong~, 炸出了一地的无奈。

  不记得从什么时候开始常常把‘累’字挂在嘴边,每个人都有各自的苦衷和心酸,不想给周围的人一种消极的感觉,要做的比别人强,比别人多才不显得脆弱。
  屋里的人很噪杂,空气中弥漫着腐尸一样的气息令人作呕。我是在等待一个契机还是在等待一种生活?明年会是什么样子,还能更差吗?一件事的好坏,不算什么,多件不顺心的事带来的冲击在心里总会留下点什么吧。又开始头疼了,抬头看见了远处高楼的灯光,里面的人是在欢笑还是在争吵,他们是不是和我一样生活在这拥挤的城市?闪烁的灯光里透着未知的光芒,那么美又那么远。
  被绑架的生活里总会有一些不切实际的风景出现,太多的不舍和眷恋让人无法自拔。她咆哮着、舞蹈着,甚至强力撕扯你的身体,只为了证明她的存在才是理所当然的。过去的事很令人怀念,今天要的很久是永久吗?不放手就是永恒吗?或许吧,这原本就是我的生活。