先看再点赞,给自己一点思考的时间,微信搜索【沉默王二】关注这个有颜值却靠才华苟且的程序员。本文 GitHub github.com/itwanger 已收录,里面还有一线大厂整理的面试题, ...
坚持写作有不少好处,除了赚些零花钱之外,还常常能收获读者的赞赏,满满的价值感。当然,最有意义的是,通过分享老兵哥我认识了天南海北不少的朋友,偶尔还有小伙伴找我咨询职业发展的建议,被信任的感觉也很好,尤其是被软妹子信任。只要时间允许,我非常乐意分享个人经验和观点。 前两天有位加了微信的小伙伴找我咨询如何提升技术能力,想起当年我也存在这方面的困惑,总觉得自己已经很努力了,但过了一阵子才发现依旧在原地踏 ...
2019-11-25 16:51 2 231 推荐指数:
先看再点赞,给自己一点思考的时间,微信搜索【沉默王二】关注这个有颜值却靠才华苟且的程序员。本文 GitHub github.com/itwanger 已收录,里面还有一线大厂整理的面试题, ...
今天为一个系统左侧的菜单栏设置了一个点击事件,设置了translateAnimation以后发现,当位移动画结束以后,菜单里边的button的onclick事件还在,不得不感慨这点官方做得实在够脑残,于是自己又加了一个控制view显隐的代码,最后代码是这样的: ...
给定一个带头结点的单链表,编写算法将其原地逆置。所谓“原地”是指空间复杂度为O(1)。有两种方法,头插法和冒泡法。这两种方法的时间复杂度均为O(n)。 头插法 思路 我们知道,用头插法建立链表,得到的链表中元素的顺序和输入的顺序相反,所以利用这一特点,可以将链表逆置。 给定一个带头结点 ...
什么是原地操作?先来看看一个例子 列表l在使用append方法添加了一个元素后,没有产生副本,再次打印l时多了一个元素5,这个append就是原地操作的方法,由此可见原地操作具有以下特性: 1.不产生返回值(返回值为None) 2.改变作用对象(不会产生副本) 因此不可变对象没有原地 ...
如果不要求“原地”,正向遍历原链表,头插法建立一个新的单向链表,它就是原链表的逆序。 下面利用递归的方法将单向链表原地逆序。 可以很容易地把递归改写成非递归的形式。 NODE* inverse(NODE *head){ if(head==NULL) return ...
什么是原地操作: 例子: 列表在append添加一个元素后,没有产生新副本,再次打印的时候多了一个值,这个appned就是原地操作 由此可见,原地操作有以下特点: 没有返回值(返回值为None) 改变作用对象(不会产生副本) 所有不可变对象肯定没有原地操作,但是可变对象一定 ...
一般在提到Merge Sort时,大家都很自然地想到Divide-and-Conqure, O(n lgn)的时间复杂度以及额外的O(n)空间。O(n)的extra space似乎成了Me ...
不需要辅助数组即可归并。 关键在于merge这个函数。两段递增的子数组arr[begin…mid-1]和arr[mid…end],i=begin,j=mid,k=end i往后移动,找到 ...