大二在读_蒟蒻一只
假设两个链表分别为l1和l2,l1和l2都是有序的 因为要 排成升序,把l1和l2指向的结点的较小的尾插到新链表
若n为正数:tmp = 0 n ^tmp 还是n ( 因为0^a = a ) n^tmp - tmp = n - 0 = n** 若n为负数: tmp = -1 结论:-n ^ -1 = n-1 无论n为任意实数(包括0,正负数都满足) 所以 n^tmp - tmp = n
找到两个二进制序列不同位有几位
交换二进制的奇数位和偶数位
代码讲解: 把0强转为结构体指针,向后可以访问一个结构体 认为后面存放了一个结构体变量
当x为奇数时:结果为1 当x为0时 :结果为0 当x为偶数时:得到的是能整除这个偶数的最大的二次幂 **当x为2的幂次方时候(偶数)-> 则x&(-x) == x 得到的能整除这个偶数的最大的二次幂就算本身 **
规律总结: 每四个数是一个循环 且循环规律为: 1 ,n+1 ,0, n
第一步:先将数组全部数进行异或,结果记为:ret 第二步:将ret和1- >n -1进行异或 最后异或的结果就算重复的数
用数组存放对应数据的商和余数,方便计算很大的数,如4的444次方等
笔者比较笨,所以会写的很详细,方便自己后序复盘和分享给别人!希望大佬们不要嫌弃我的事多~哈哈哈!感谢大佬们支持!
以下观点仅代表我本人对CSDN编辑器的看法,欢迎大佬们提出自己的观点!
之前的文章,我们了解了顺序表,包括静态顺序表和动态顺序表。具体可以看我的上两篇文章 1.静态顺序表知识及代码实现:静态顺序表 2.动态顺序表知识及代码实现:动态顺序表 既然顺序表已经能存储数据,那么我们什么又要引入链表呢? 首先,我们要知道顺序表的优缺点: 优点:空间连续,支持随机访问 缺点: 1.中间或头部分的插入删除的时间复杂度为O(N) 2.增容的代价比较大 ———————————————— 版权声明:本文为CSDN博主「芒果再努力」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.c
我们可以知道,静态顺序表的缺点是: 因为使用的是定长数组,所以空间给少了不够用,给多了,就会造成空间的浪费. 由此,我们引入一个新的顺序表----动态顺序表.
顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储。在数组上完成数据的增删查改。其中顺序表又分为:静态顺序表和动态顺序表。 简单来说:顺序表:连续的物理空间存储---是数组 ,数据必须是从头开始,依次存储。