摘要: 高精度 高精度是因为c++的整数类型并不能存特别长的数,所以要用数组存储来模拟四则运算 高精度基本就是模拟的人列竖式时的运算过程 因为有最高位有进位现象,所以要将各位存到数组的第一位 具体存储方式如下 // 例如用a, b两个字符串读入,用两个vector来存 vector<int> A, B; i 阅读全文
posted @ 2022-05-03 19:16 张詠然 阅读(118) 评论(0) 推荐(2)
摘要: 二分 整数二分 二分查找是用 $ logn $ 的时间复杂度查找一个元素 原理:每次都让当前查找的区间长度减半 取当前区间的中点 像一个性质,然后更新区间 如果l和r重合,则查找完毕 // 第一种模板 while (l < r) { int mid = l + r + 1 >> 1; if (che 阅读全文
posted @ 2022-05-03 19:14 张詠然 阅读(43) 评论(0) 推荐(0)
摘要: 排序 快速排序 核心思想:分治 确定分界点x 调整区间使得所有≤x的数都在x左边,≥x的数都在x右边 递归左右两边(双指针) 代码如下 void quick_sort(int q[], int l, int r) { if (l >= r) return; int x = l + r >> 1, i 阅读全文
posted @ 2022-05-03 19:11 张詠然 阅读(41) 评论(1) 推荐(1)