leetcode
大萝卜蔬菜
这个作者很懒,什么都没留下…
展开
-
计算机存储数字
看N皇后问题的时候,有使用位运算的,特此记录加强记忆。计算机存储计算机中所用整数是用补码进行存储。正数的补码不变,负数的补码是反码加一。反码是除了符号位,其他位数取反。使用补码的原因补码是为了让计算机将所有的加减法运算,都改成加法运算。简单例子:+4:0100(原码)0100(补码)-3: 1011(原码)1101(补码)那么4-3 = 4+(-3) = 0001(补码相加)->0001(取补码)当然如果按照4-3的话+3: 0011(原码)0011原创 2021-11-10 21:24:17 · 115 阅读 · 0 评论 -
位运算(待续)
不需要额外空间,可以往位运算方向想1.交换律 a ^ b ^ a = a ^ a ^ b2.0异或任何一个数都为那个数 0 ^ a = a3.相同数异或为0 a ^ a = 0.4.不知道输入法打出来“异或”是(・∀・(・∀・(・∀・*)x &= x-1## 待续...原创 2021-10-13 15:54:44 · 56 阅读 · 0 评论 -
回溯算法----N皇后问题
回溯算法----N皇后问题回溯算法一直都困扰我很长一段时间,看了回溯算法的视频,特地来写一下这个算法,加深印象。回溯算法的通式回溯算法有个通式。void backtrack(){ if(判断是否到头了){ 添加到vector里(一次正确的回溯结束,进行存储操作) return; } for(){ ... 存储元素; backtrack; 删除元素; }}原创 2021-09-19 11:44:53 · 137 阅读 · 0 评论