![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
语言基础
996冲冲冲
这个作者很懒,什么都没留下…
展开
-
计算机存储数字的本质,正码,反码,补码
八位二进制中负数计算需要用反码末位+1得到补码,所以1111 1111补码就是1000 0001=-1,一直到1000 0001补码是1111 1111= -127,而1000 0000的补码是1000 0000也就是-0,没有意义,此处计算机将它计为-128,故一个字节的取值范围是[-128,127]。先搞清楚一点反码、补码、原码是针对二进制数而言,计算机若用原码相加减,正数加正数不会出错,然而正数和负数原码相加就会出错。(只需要将原码除符号位以外的位数取反,即0改为1,1改为0)原创 2023-02-16 16:19:14 · 817 阅读 · 0 评论 -
leetcode253. 会议室 II
扫描线法,对于每个区间,我们先进行排序,遇到开始节点说明要申请一个会议。遇到结束节点说明结束一个会议,统计最多的时候需要开几个会议室。由于会议的开始时间一定在结束时间之前,所以这样的做法成立。原创 2023-02-15 22:14:00 · 261 阅读 · 0 评论 -
如何删除二叉堆的任意一个节点
swap(A.pop(), A[i]); #将最后一个元素换到要删除元素的位置up(A[i]); #大顶堆的情况下,如果可以执行上浮选项说明比父节点还大,直接上浮到正确位置即可sink(A[i]); #如果比子节点小,则下沉到合适位置即可...原创 2022-05-02 14:10:50 · 589 阅读 · 0 评论 -
python中深浅拷贝
python 深拷贝和浅拷贝的区别:可变对象:一个对象在不改变其所指向的地址的前提下,可以修改其值(所指向的地址中的);这个对象指向的地址不变的前提下,这个对象的值是可以改变的( 列表、字典、集合)不可变对象:不可变对象是指,一个对象所指向的地址上值是不能修改的,如果你修改了这个对象的值,那么它指向的地址就改变了。相当于你把这个对象指向的值复制出来一份,然后做了修改后存到另一个地址上了,但是可变对象就不会做这样的动作,而是直接在对象所指的地址上把值给改变了,而这个对象依然指向这个地址。(数字、原创 2021-10-29 15:16:35 · 50 阅读 · 0 评论