我们常说程序=算法+数据结构。結果光搞框架去了有点说不过去~
常数时间的操作:如果一个操作的执行时间不以具体样本为转移,每次执行时间都是固定时间称这样嘚操作为常数时间操作。
数组的寻址操作就是固定时间操作与数据量无关。
非常数时间操作包括: 链表获取i
位置的元素
在0~n-1位置中找到最尛值和0位置的数交换
找1~n-1位置最小值,和1位置的数交换
直到n-1~n-1不用操作了
整个流程中常数操作的数量:
我们最终是要将低阶项和高阶项的系数抹掉的。
1、两数相加除以2的时候为了避免溢出,应该先除以2再相加
2、右移一位>>
比除以2的运算更快
3、除以2加1相当于先右移再进行或1| 1
必须保证两个数在两个独立的空间,否则自己异或自己结果为0这只是一个骚操作,面试的时候可能或问到实际上你写的时候不要这么嘚瑟,因为容易有坑
问题1 如何在不使用新变量的情况下,交换两个数
写在前面:这里是小王成长日志┅名在校大学生,想在学习之余将自己的学习笔记分享出来记录自己的成长轨迹,帮助可能需要的人欢迎关注与留言。
4行第一行为兩个整数:m,n并以空格隔开,分别表示将要输入的数组a和数组b的元素的个数第二行为m个整数,为数组a的元素;第三行为n个整数为数組b的元素。第四行为两个整数m1n1,表示把数组b的前n1个元素追加到数组a的前m1个元素后
1行。为最后数组a中的元素两个元素之间以逗号隔开。最后一个元素没有
都看到这里了各位哥哥姐姐叔叔阿姨给小王点个赞 关个注 留个言吧,和小王一起成长吧你们的关注是对我最大的支持。
有事没事进来看看吧 :
如果以上内容有任何不准确或遗漏之处或者你有更好的意见,就在下面留个言让我知道吧-我会尽我所能来回答
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。