快速排序与 sort 自定义排序 以洛谷p117[模板]排序为例
快速排序是 OI 中常用的算法。这篇题解/笔记将会详细地讲解快速排序的原理、实现过程,也会拓展 STL sort 函数的使用和快排复杂度及其证明。 快速排序的原理 快速排序如何用 C++ 实现? 我们以洛谷 P1177 【模板】排序为...
printf为什么不能输出二进制?
printf能不能输出二进制,毫无疑问,不能。 C语言中,可以用printf 输出八进制、十进制、十六进制,但就是二进制没有得到支持。 至于原因,有很多种说法,有说二进制太长,输出太占地方,也有说当初在实验室发明C语言的时候,用不到二...
C++ 输入输出(cin & cout)加速/效率优化
一、cin 和 cout 效率低下的原因 在做算法题的时候,最近遇到很奇怪的问题:命名算法的复杂度不是很高,粗略计算是能通过的,但总是显示超时,检查算法也没问题,当把输入输出换成 scanf 和 printf 后就莫名其妙地能...
c++ 结构体排序(sort)实现
个人比较喜欢用结构体来存两个有关联的变量 ,而不喜欢用二维数组,因为很容易出错,所以,想写一篇关于结构体排序的博客哈哈哈哈哈✪ ω ✪ 头文件 我最经常用的是sort排序,这里头文件用的是 #include<algorithm&...
c++ 结构体排序(sort)
个人比较喜欢用结构体来存两个有关联的变量 ,而不喜欢用二维数组,因为很容易出错,所以,想写一篇关于结构体排序的博客哈哈哈哈哈✪ ω ✪ 头文件 我最经常用的是sort排序,这里头文件用的是 #include<algorithm&...
c++ vector begin(),end(),rbegin()...
C++ primer (中文版第四版) C++ primer第273页 9.3.2 begin和end成员 begin和end操作产生指向容器内第一个元素和最后一个元素的下一个位置的迭代器。这两个迭代器通常用于标记包含容器中所有元素的...
C/C++ for循环的几种用法
简单的讲一下for循环的三种用法! 用的编译工具是:Visual Studio 2017 一、for (int i = 0; i < N; i++) 这是最简单,也是最常用的方法: int nums[] = { 3, 4, 2,...
阶乘和计算
递归函数和累加的方式进行计算: #include <iostream> int factorialSum(int n) { if (n == 0) { return 0; } return factorial(n)...
C++ 中 符号.和->的作用和区别
A.B则A为对象或者结构体; 点号(.):左边必须为实体。 A->B则A为指针,->是成员提取,A->B是提取A中的成员B,A只能是指向类、结构、联合的指针; 箭头(->):左边必须为指针;