05 2022 档案

摘要:c++ 超大整数除法 高精度除法 解题思路 计算a/b,其中a为大整数,b为普通整数,商为c,余数为r。 根据手算除法的规则,上一步的余数记为r,则本次计算的被除数为t=r*10+被除数的本位数值a[i],商t/b,本步余数为t%b 除法是从最高位开始计算的,所以需要反转reverse一下,才能保持 阅读全文
posted @ 2022-05-21 15:37 小呆瓜瓜 阅读(907) 评论(0) 推荐(1) 编辑
摘要:c++ 超长整数乘法 高精度乘法 解题思路 参考加法和减法解题思路 乘法不是一位一位的按照手算的方式进行计算,而是用循环用一个数的某一位去乘另外一个数 打卡代码 #include<bits/stdc++.h> using namespace std; vector<int> mul(vector<i 阅读全文
posted @ 2022-05-21 11:35 小呆瓜瓜 阅读(121) 评论(0) 推荐(1) 编辑
摘要:c++ 超长整数减法 高精度减法 实现思路 和加法类似,设置临时变量记录借位 当对应位数相减得到的结果大于等于0时,该位数字为本身值,否则需要加上借位的10。则$t=(t+10)%10$ 打卡代码 #include<bits/stdc++.h> using namespace std; bool c 阅读全文
posted @ 2022-05-21 10:53 小呆瓜瓜 阅读(174) 评论(0) 推荐(0) 编辑
摘要:c++ 超长整数加法 高精度加法 实现思路 不能直接使用加法,因为int和long long都已超出最大数据表示范围 数据读入采用string类型,读入后将数据的每一位存储到vector中 vector存储时数字的高位要存在vector的末尾,因为这样如果有进位,可以快速push_back stri 阅读全文
posted @ 2022-05-21 09:21 小呆瓜瓜 阅读(241) 评论(0) 推荐(0) 编辑
摘要:求一个数的三次方根 实数二分 方法一: 调用库函数pow res=pow(x,1.0/3); 使用这个函数时,当x为负数时,输出为nan,原因是负数的立方根还有复数,而c++不能表示复数 方法二: 二分 double l,r; while(r - l > 1e-8){ double mid = (l 阅读全文
posted @ 2022-05-20 20:48 小呆瓜瓜 阅读(106) 评论(0) 推荐(0) 编辑
摘要:数的范围——整数二分 题目描述 给定一个按照升序排列的长度为 n 的整数数组,以及 q 个查询。 对于每个查询,返回一个元素 k 的起始位置和终止位置(位置从 0 开始计数)。 如果数组中不存在该元素,则返回 -1 -1。 输入格式 第一行包含整数 n 和 q,表示数组长度和询问个数。 第二行包含 阅读全文
posted @ 2022-05-20 11:08 小呆瓜瓜 阅读(26) 评论(0) 推荐(0) 编辑
摘要:逆序对个数求解 题目描述 给定一个长度为 n 的整数数列,请你计算数列中的逆序对的数量。 逆序对的定义如下:对于数列的第 i 个和第 j 个元素,如果满足 i<j 且 a[i]>a[j],则其为一个逆序对;否则不是。 输入格式 第一行包含整数 n,表示数列的长度。 第二行包含 n 个整数,表示整个数 阅读全文
posted @ 2022-05-20 09:27 小呆瓜瓜 阅读(133) 评论(0) 推荐(0) 编辑
摘要:归并排序 算法分析 空间效率:\(O(n)\) 时间效率:$每趟归并时间复杂度为O(n),共需 log_{2}n 趟,时间复杂度为n*log_{2}n $ 稳定性:稳定 模板 #include<bits/stdc++.h> using namespace std; int n; const int 阅读全文
posted @ 2022-05-15 21:45 小呆瓜瓜 阅读(15) 评论(0) 推荐(0) 编辑
摘要:快速选择 第k个数 题目描述 给定一个序列,求第k小的数 算法思想 利用快速排序思想,算法复杂度能达到O(n)步骤如下: 1.找到排序分界点x,这里选择区间最左值 2.排序,让左边的值都小于x,右边都大于x 3.递归排序寻找数字,如果左区间数字数目大于k,直接在左边找第k小的数字,如果左区间数字数目 阅读全文
posted @ 2022-05-15 19:44 小呆瓜瓜 阅读(28) 评论(0) 推荐(0) 编辑
摘要:快速排序 模板 模板每次选取的枢轴元素为中间的值 //快速排序算法 void quickSort(int a[],int l,int r){ //递归边界判断 if(l>=r) return ; //初始化指针 //这里-1和+1是因为后面代码使用了do-while循环结构 int i=l-1,j= 阅读全文
posted @ 2022-05-15 16:34 小呆瓜瓜 阅读(10) 评论(0) 推荐(0) 编辑
摘要:c++生成随机数 想要生成随机数,需要使用的头文件包括 #include<iostream> #include<cstdlib> #include<ctime> 或者直接 #include<bits/stdc++.h> 1.生成 [a,b)的随机数 srand((unsigned)time(NULL 阅读全文
posted @ 2022-05-14 16:06 小呆瓜瓜 阅读(111) 评论(0) 推荐(0) 编辑
摘要:SQL语句修改MySQL用户密码 前言 上数据库安全实验课,用命令行和DataGrip试图修改用户密码,一直语法报错。最后用Navicat才修改成功,预览Navicat的SQL语句,发现语句和网上都不一样。 解决办法 使用语句: ALTER USER `用户名`@`localhost` IDENTI 阅读全文
posted @ 2022-05-06 21:05 小呆瓜瓜 阅读(371) 评论(0) 推荐(0) 编辑