算法讲解001-003

目录

学习算法的语言问题以及如何开通gpt4

二进制和位运算


学习算法的语言问题以及如何开通gpt4

prompt:这是一份在Leetcode上通过的java代码,请转化成C++版本,并且能通过。

二进制和位运算

1)二进制和位的概念
2)正数怎么用二进制表达
3)负数怎么用二进制表达(最高位为1代表负数)


4)打印二进制;直接定义二进制、十六进制的变量


8)取反符(~)与相反数(取反后+1)

负数的二进制状态如何表示:列出其正数二进制 > - 1 > 取反
拿到一个负二进制怎么看负几:(最高位为1代表负数) > 取反 > +1

取反+1 和-1取反:是一样的,既互逆又相同


9)整数最小值的特殊性(取绝对值还是自己)

5)常见的位运算(1、&、^、~、<<、>>、>>>)

或运算:

7)注意|、&是“位运算或”和“位运算与” ;||、&&是“逻辑或/短路或”、“逻辑与/短路与”,两者是有区别的


6)解释如何打印二进制的函数

由于1的其他位都是0,这些其他位与num相与后也必是0 ,所以是否==0,取决 于值为1的那位,用1所在位来一位一位测num就行

10)为什么这么设计二进制(为了加法的逻辑是一套逻辑,没有条件转移),那么为啥加法逻辑如此重要呢(-*/都是建立在位运算的加法逻辑之上拼出来的的)?

11)关于溢出(自己确保自己的调用所得到的结果不会溢出,一定是自己确保的,计算机不会给你做检查)

溢出位计算机会丢弃,我们要确保溢出丢弃后也对

12)位运算玩法很多很多,特别是异或运算(后面的课会详细讲述)、如何用位运算实现加减乘除(后面的课会详细讲述)

左移、右移:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值