将一个含有n个元素的数组向右循环移动k位,要求时间复杂度是O(n),且只能使用两个额外的变量
今天在复习数据结构的时候在PPT里面看到了这样的一个问题,将一个含有n个元素的数组向右循环移动k位,要求时间复杂度是O(n),且只能使用两个额外的变量,第一想法是开一个辅助的数组但是不符合题目要求,上网查询资料发现这被称为经典算法... 解决方案是先将左边K位反向,再将右边K位反向,然后再全部反向即可达到效果,总共有2n次运算,时间复杂度为O(n),不过为了符合两个额外的变量使用了C+
今天在复习数据结构的时候在PPT里面看到了这样的一个问题,将一个含有n个元素的数组向右循环移动k位,要求时间复杂度是O(n),且只能使用两个额外的变量,第一想法是开一个辅助的数组但是不符合题目要求,上网查询资料发现这被称为经典算法... 解决方案是先将左边K位反向,再将右边K位反向,然后再全部反向即可达到效果,总共有2n次运算,时间复杂度为O(n),不过为了符合两个额外的变量使用了C+
从代码的可运行性上来说,@Override完全没有作用,少了这个注解也完全可以运行。 下面列举使用@Override的几点好处: 1.减少Bug:你的IDE会帮你检测重写的参数以及函数名以及返回值有没有写错。 2.增强代码的可读性:这样写的话相当于加了注释的效果,有助于将来再回来读能够读懂。
在被QQ远程协助远程观看气的不行以后,我转向了Teamviewer,虽然需要下载安装只要21.7MB,发给伙伴也很方便,安装好以后直接要到你小伙伴的ID以及密码(密码可以手动更新安全性也有保障)就可以直接操作对方的电脑了,对网络要求极低,相当流畅,小伙伴们可以试一下!这里放上官网链接 TeamViewer-官网
这个学期开学也有一个月了,发现自己特别大一毛病,就是做事老是主次不分,重要的事情或许比较难做,就想着拖到最后再做,然最后已经没有什么精力了然后就什么都做不好了。
这里是第一篇博客,虽然这个Blog的编辑器没有CSDN好使,但是可以自定义的东西很多,以后再慢慢探索吧~