算法笔记
老权仔
这个作者很懒,什么都没留下…
展开
-
C++浮点型保留有效数字与小数位数
C++浮点型保留有效数字与小数位数#include <iostream>#include <iomanip>using namespace std;int main(){ float a=1.232423; cout<<setprecision(2)<<a<<endl;//保留两位有效数学 cout<...原创 2020-03-16 20:13:56 · 1463 阅读 · 0 评论 -
C++ STL(Standard Template Library)标准库一一栈、队列和优先队列
栈、队列和优先队列栈STL的 stack 头文件提供了栈,用 stack< int > s 方式定义,用 push() 和 pop() 实现元素的入栈和出栈操作,top() 取栈顶元素。原创 2020-02-22 16:27:21 · 178 阅读 · 0 评论 -
算法笔记——基础数学算法(最大公约数、素数、快速幂)
基础数学算法最大公约数欧几里得算法 ( 辗转相除法 )原理 :两个整数的最大公约数等于其中较小的那个数和两数相除余数的最大公约数表达式 :gcd(a,b)=gcd(b,agcd(a,b) = gcd(b,agcd(a,b)=gcd(b,a%b),a≥bb),a \geq bb),a≥b & b≠0,b \neq 0,b=0,int gcd(int a,int b){ ...原创 2020-02-17 18:23:11 · 283 阅读 · 0 评论 -
算法笔记1-快速幂
位优化快速幂运算其运算过程与二进制运算时相同的,例如求 a15a^{15}a15 的值,其中十进制156转换为二进制为10011100,则 a15=a4∗a8∗x∗a16∗a128a^{15}=a^{4} * a^{8 *} x^{*} a^{16 *} a^{128}a15=a4∗a8∗x∗a16∗a128 。10011100-12811100-161100-8100-4#inclu...原创 2019-05-19 20:22:30 · 215 阅读 · 0 评论 -
算法笔记2-快速模幂
试求 ab%na^{b} \% nab%n 的值,其中 aaa、bbb、nnn 均为整数范围的数。1.递推求解#include<iostream>using namespace std;int a, b, n;int kmod(int a, int b, int n){ int digit[32] = {}; int i, k, result = 1; i = 0;...原创 2019-05-19 20:51:51 · 255 阅读 · 0 评论 -
C++ STL stack(栈)
#include <iostream>#include <stack>using namespace std;int main(){ stack<int>mystack; for (int i = 0; i < 5; i++) mystack.push(i);//进栈 cout << "size:" << myst...原创 2019-08-29 16:43:29 · 258 阅读 · 0 评论 -
C++ STL(Standard Template Library)标准库一一排序与检索
sort排序函数sort可以对任意对象进行排序,包括内置类型和自定义类型,前提是类型定义了”“<”运算符,排序之后可以用lower_bound查找大于或等于x的第一个位置。待排序/查找的元素可以放在数组里,也可以放在容器(vector)里。unique函数可以删除有序数组中的重复元素。大理石在哪(UVa,10474)现有N个大理石,每个大理石上写了一个非负整数、首先把各数从小到大排序;...原创 2019-09-21 09:00:50 · 189 阅读 · 0 评论 -
C++ STL(Standard Template Library)标准库一一不定长数组vector
vector头文件中的vector是一个不定长数组,可以用clear()清空,resize()改变大小,用push_back()和pop_back()在尾部添加和删除元素,用empty()测试是否为空,vector之间可以直接赋值或者作为函数的返回值。#include<iostream>#include<vector>#define n 10using namesp...原创 2019-09-21 09:32:12 · 193 阅读 · 0 评论