ICode9

精准搜索请尝试: 精确搜索
  • 不用加减乘除做加法2020-07-01 13:41:29

    不用加减乘除做加法 题目描述: 解题思路: 针对十进制 (1)先理解一下10进制是如何做加法的。例如5+7=12,分为3步。 (2)先不考虑进位值,5+7得到2,再计算进位值,个位上5+7的进位为1,所以进位为1*10=10 (要乘以10是因为个位上进一相当于加10). 重复(1),(2),直到没有进位制产生,就结束了

  • 二进制求和2020-06-18 16:59:16

    此博客链接:https://www.cnblogs.com/ping2yingshi/p/13158404.html 二进制求和(106min) 题目链接:https://leetcode-cn.com/problems/add-binary/ 给你两个二进制字符串,返回它们的和(用二进制表示)。 输入为 非空 字符串且只包含数字 1 和 0。 示例 1: 输入: a = "11", b = "1"输出

  • 汇编test指令2020-06-04 09:55:38

    运算结果标志位 1、进位标志CF(Carry Flag) 进位标志CF主要用来反映运算是否产生进位或借位。如果运算结果的最高位产生了一个进位或借位,那么,其值为1,否则其值为0。 使用该标志位的情况有:多字(字节)数的加减运算,无符号数的大小比较运算,移位操作,字(字节)之间移位,专门改变CF值的指令

  • 通过位运算实现求和2020-06-02 23:54:08

    迭代法,通过位运算实现两数求和bitSum(a,b) 二进制计算时,不考虑进位运算结果为 a^b 考虑进位,计算需要进位的大小: 0 & 0 = 不进位 1 & 0 = 不进位 0 & 1 = 不进位 1 & 1 = 进位 所以进位为:(a&b)<<1; 然后将不考虑进位的异或结果与进位量相加,重复以上过程,直至进位为0,即为最

  • 关于UDP的检验和计算(附代码)2020-06-02 18:57:28

    关于UDP的检验和计算(附代码) 在下午的学习过程中https://www.cnblogs.com/roccoshi/p/13032356.html 有一张图讲述了UDP的校验方法, 如下: 老师只粗略的讲述了检验过程, 并没有讲计算方法, 检验和 这玩意之前也多次提到过了, 每次都没有自己算过, 刚好借此机会详细了解记录一下

  • 串指令2020-05-27 20:55:12

                REP前缀是当ecx寄存器>0时,重复。 而REPE前缀是零标志置位(啥叫零标志位置位,通俗的讲就是零标志位(zf=1), 并且ecx>0时重复。      标志位: CF:进位标志位。在无符号运算时,记录了运算结果的最高有效位向更高位的进位值或从更高位借位,产生进位或借位时CF=1,

  • 二进制码转BCD码原来2020-05-09 09:51:18

    有时候没有采用BCD计数器,有需要用十进制形式显示二进制数据,最常用的方法是编码转换:将二进制码转换成BCD码(8421)。 8421码:8421码又称十进制码,它只选用了四位二进制码中前10组代码,4个码表达10个数,即用0000~1001分别代表它所对应的十进制数,余下的六组代码不用。 如果要我将二进制码

  • 特定字符搜索2020-05-02 11:00:15

    问题 假如有一个4个字节的整型数据: b4|b3|b2|b1. 怎样快速的判断4个byte中是否存在某个特定byte? 一开始考虑的是使用bitwise operator. 但是始终没有想出来. (这些操作在bit之间的独立的, 我怀疑只使用这些操作是无法判断的). 在网上查了一下, 找到了一个方法, 是利用加法进位进

  • 备战秋招[一]2020-04-25 17:52:27

    加法器相关 半加器和全加器的区别在于,是否有进位输入端,可以直观地理解为,半加器是两个一比特相加,而全加器是三个一比特相加,输出结果和进位信号。 半加器 半加器的真值表如下图 输入 输出 A B C S 0 0 0 0 0 1 0 1 1 0 0 1 1 1 1 0 其逻辑表达式为 根据逻辑表

  • 《单片机汇编》期末考试、考研常见考题、习题,题型汇总(三)2020-04-14 18:07:11

    此篇文章中涉及的新指令如下: 数量 助记符 说明 字节数 执行时间 指令代码 15,CLR C 进位标志位清零 1 1 C3H 16,CLR bit 直接寻址位清零 2 1 C2H,bit 17,SETB bit 进位标志位置一 1 1 D3H 18,SETB C 直接寻址位置一 1 1 D2H,bit 19,MOV C,bit 直接

  • leetcode 剑指offer 17. 打印从1到最大的n位数2020-04-02 15:58:44

    输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数。比如输入 3,则打印出 1、2、3 一直到最大的 3 位数 999。 示例 1: 输入: n = 1 输出: [1,2,3,4,5,6,7,8,9]   说明: 用返回一个整数列表来代替打印 n 为正整数 针对于大数的解法 lc上一个人写的。。。属实有点不好懂   class

  • Leetcode -- 二进制求和(67)2020-03-30 22:08:15

    题目描述:给定两个二进制字符串,返回他们的和(用二进制表示)。输入为非空字符串且只包含数字 1 和 0。 思路一:使用python内置函数 1 class Solution: 2 def addBinary(self, a: str, b: str) -> str: 3 return '{0:b}'.format(int(a,2)+int(b,2)) #int(x, base=10

  • 基础练习 高精度加法2020-03-24 18:54:26

    问题描述   输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述   由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。  定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B

  • JS:两个数不使用四则运算得出和2020-03-21 10:09:22

    // 原理: // 因为按位异或的逻辑很像加法,例如1^0=1,0^0=0 // 唯一不同的是1^1=0,也就是说无法进位 // 于是我们把加法拆成 (全不进位得到的数)+(进位数) // 假设我们算10+9(1010和1001),可以拆成 (0010^0001)+(10000) // 前者只用按位异或,后者用按位与,再左移一位(模拟进位) //

  • 高精度乘法(C语言版本)2020-03-16 18:01:32

    由于笔者最初在一次电脑课想计算大数乘法(即高精度乘法),通过几个月的摸索终于实现了高精度乘法。 首先我们要知道什么叫取余。 取余即A/B=C………D,A=B*C+D,其中这个D就是余数; 举个例子:11/10=1……1,其中这个1就是余数。 其次需要新的算法,算法如下。 上图为计算方法,简单来说就

  • 蓝桥杯基础训练超全习题题解——BASIC-30.阶乘计算2020-03-13 19:02:05

    每日刷题(二十九) BASIC-30.阶乘计算 这个题目有点魔鬼,因为你要考虑你的数组到底设多大,你的数组能设多大。其次你得考虑数字存放的逻辑,分情况讨论,进位和未进位,同时需要设置两个变量,一个存放刚开始做乘法所产生的的进位,另一个存放前一个数乘法运算后产生的进位,每一轮循环要修

  • hive的floor函数,ceil函数,round函数2020-02-29 19:51:23

    hive的floor函数和ceil函数与python、sql等一致 1. floor函数 select floor(1.4) # 结果是:1 2. ceil函数 select ceil(1.4) #结果是:2 3. hive的round函数与python稍微有点差别 首先说hive的round:直接四舍五入 select round(1.455, 2) #结果是:1.46,即四舍五入到十分位 sele

  • 数组-67.二进制求和2020-02-29 15:09:10

    1.题目 给定两个二进制字符串,返回他们的和(用二进制表示)。 输入为非空字符串且只包含数字 1 和 0。 示例 1: 输入: a = “11”, b = “1” 输出: “100” 示例 2: 输入: a = “1010”, b = “1011” 输出: “10101” 2.思路 (1) 将二进制转换成十进制求和。 class Solution:

  • 高精度2020-02-24 14:50:59

    在我看来高精度是普通计算的升级版,在洛谷阶级求和中就用到了(一开始没发现,错了好几次)。 输入位数很长时,可利用字符串函数和操作运算,将每一位取出,存入数组中。 void init(int a[]) { string s; cin>>s; len=s.length(); for(i=1;i<=len;i++) a[i]=s[len-i]-'0'; } 加法进位:c[i]=a[i

  • 剑指offer系列——48.不用加减乘除做加法2020-02-22 19:03:14

    Q:写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。 T: 1.使用进制。 两个数异或:相当于每一位相加,而不考虑进位; 两个数相与,并左移一位:相当于求得进位; 将上述两步的结果相加 首先看十进制是如何做的: 5+7=12,三步走 第一步:相加各位的值,不算进位,得到2。 第二

  • 阶乘计算2020-02-06 14:00:54

    Description 输入一个正整数n,输出n!的值。 其中n!=1*2*3*…*n。 Input 输入包含一个正整数n,n≤1000。 Output 输出n!的准确值。 Sample Input 10 Sample Output 3628800 More Info n!可能很大,而计算机能表示的整数范围有限,需要使用高精度计算的方法。 使用一个数

  • LeetCode 67. Add Binary2020-01-31 13:01:24

    67. Add Binary(二进制求和) 链接 https://leetcode-cn.com/problems/add-binary 题目 给定两个二进制字符串,返回他们的和(用二进制表示)。 输入为非空字符串且只包含数字 1 和 0。 示例 1: 输入: a = "11", b = "1" 输出: "100" 示例 2: 输入: a = "1010", b = "1011" 输出: "10

  • 有没有卖115网盘资源的(扩展)2020-01-29 14:54:15

    可以看出,round()函数最后得到的是数值(浮点型或整型),但是在“舍”和“入”的规律上不一定: (1)round(x,n)函数中,是否进位或四舍五入,取决于n位以及n+1位小数的值 (2)只有当n+1位数字是5的时候,容易混淆,如果n为偶数,则n+1位数是5,则进位,例如round(1.23456,3)最终变为1.235 (3)如果n为奇数,则n+1位是数5

  • 剑指offer_12.31_Day_12019-12-31 22:06:53

    不用加减乘除做加法 题目描述 写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。     不用四则运算,必然是依靠位运算。   位运算包括,与,或,异或,取反,左移,右移。   分别为:     与:& 两者都为1则1     或:| 两者有1为1     异或:^ 该位不同为1

  • 大数阶乘(N! Plus)问题2019-12-24 21:54:28

    解题思路 将正整数N从1到N逐位相乘,即1 * 2 * 3...... * (N-1) * N。每次相乘后的值会存储到array[]中,其中一个数组元素存储值中的一位数。当值小于10时直接存储,值大于10时,计算进位和本位,array[j]存储本位,array[j+1]存储进位。 如:10!= 3628800,有 array[7] = 3 array[6] = 6 array[5]

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有