分类: C++

16 篇文章

一些特殊的位运算
异或: 1.二进制运算时,相同为0,不同为1 2.整数自己和自己异或时得0 3.任意整数与0异或时得整数本身 从而实现两变量在无中间变量的情况下的交换(int): a=a^b; b=a^b; a=a^b; x & -x: 保留二进制数最后一位出现1的位置,其余位置0; 具体证明可用奇偶数分别验证; x&(x-1): 消除二进制数最后…
数组中数字出现的次数
前置知识:yvanwzw.top/index.php/2021/03/17/一些特殊的位运算/ 原题1: 来源:https://leetcode-cn.com/problems/shu-zu-zhong-shu-zi-chu-xian-de-ci-shu-lcof/ 一个整型数组 nums 里除两个数字之外,其他数字都出现了两次。请写程序找出这两个…
求1+2+…+n(不使用判断语句、循环语句与乘除法)
原题:https://leetcode-cn.com/problems/qiu-12n-lcof/ 题目描述:求 1+2+...+n ,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。 属于初见一脸懵逼,仔细一想很简单的题,考的语言特性 据题意得可能要用到的几种东西:1.位运算(代…
C++部分函数记录
#include<math.h> double ceil(double x) //向上取整 double floor(double x) //向下取整 2.辗转相除法化简分数(先用trans化为真分数) class node { public: bool ifPosi{ true };//true=posi false=nega long l…