1-3 交换变量(算法竞赛入门经典)
交换变量在这里提出了三种方法,代码如下:
我这里直接设计了三个函数用以验证:
#include<iostream>
#include<bits/stdc++.h>
using namespace std;void swap1(int a,int b);
void swap2(int a,int b);
void swap3(int a,int b);int main()
{int a,b;cin>>a>>b;swap1(a,b);swap2(a,b);swap3(a,b);return 0;
}void swap1(int a,int b) //法一:中间变量替换法,也称空杯子法
{int t;t=a;a=b;b=t;cout<<a<<" "<<b<<endl;
}
void swap2(int a,int b) //法二:数学逻辑计算法,需要时刻关注变量,思考偏多一些
{a=a+b;b=a-b;a=a-b; cout<<a<<" "<<b<<endl;
}
void swap3(int a,int b) //法三:黑盒测试,无脑输出法
{cout<<b<<" "<<a<<endl;
}
方法一:
是我们的一般思路,也是课本中常会引用的案例,空杯子法,核心就是中间变量的引入。
谁先入空杯,谁先变。
方法二:
这个有一点偏向于数学逻辑计算的方面,自己要时刻计算变量的值,需要一定的经验,才能写出。
方法三:
由于大多数的算法竞赛均为黑盒测试,所以一般只要输出符合格式即可,考验的是解决问题的实际能力。
比较高级的代码并不一定是最好的,学习算法的目的是为了解决问题,而不是为了炫技,能够有效的解决问题即可,自然程序的编写也是越简单越好。
1-3 交换变量(算法竞赛入门经典)相关推荐
- 第一章 程序设计入门--算法竞赛入门经典
第一章 程序设计入门–算法竞赛入门经典 知识点一: int m=25; printf("%d\n",m); printf("%03d\n",m); 输出如下: ...
- [读书笔记]《算法竞赛入门经典》第1章
书名:算法竞赛-入门经典 第2版 作者:刘汝佳 类别:读书笔记 文章目录 前言 第1章 程序设计入门 1.1 算术表达式 1.2 变量及其输入 1.3 顺序结构程序设计(Sequential Prog ...
- 刘汝佳《算法竞赛入门经典》---总结
刘汝佳:<算法竞赛入门经典> 三步: 基本的数据结构+算法知识: 数论等数学基本知识: 锻炼联想建模能力.知识与实际相结合,解决实际问题! 第一章:程序设计入门 1.a/b 当a.b为整数 ...
- 《算法竞赛入门经典——训练指南》第一章相关内容
#<算法竞赛入门经典--训练指南>第一章相关内容 希望各位大牛能指导! 红色为已经做了的...黄色背景是还有不懂地方,希望在年前能刷完第一章啊.... 更新版.google上貌似又加了ex ...
- #《算法竞赛入门经典》勘误
转自http://code.google.com/p/aoapc-book/wiki/BeginningAlgorithmContestsErrata #<算法竞赛入门经典>勘误 关于勘误 ...
- 《算法竞赛入门经典》Chap3
<算法竞赛入门经典(第二版)>第三章 思考题 题目1 必要的存储量 题目2 统计字符1的个数 示例程序 程序3-1 逆序输出 程序3-2 开灯问题 程序3-3 蛇形填数 程序3-4 竖式问 ...
- 《算法竞赛入门经典(第二版)》pdf
下载地址:网盘下载 内容简介 · · · · · · <算法竞赛入门经典(第2版)>是一本算法竞赛的入门与提高教材,把C/C++语言.算法和解题有机地结合在一起,淡化理论,注重学习方法和 ...
- 【算法竞赛入门经典】读书笔记
前言 寒假期间准备一下练一下OJ,对于我这个小菜鸟来说,打稳基础很是关键.听说过[算法竞赛入门经典]的大名,加上自己学习的是 C++ ,而这本书用的是 C ,多学一门语言也是不错的.因此决定每天最少看 ...
- 刘汝佳《算法竞赛入门经典(第二版)》习题(三)
刘汝佳<算法竞赛入门经典(第二版)>第三章习题(一) 习题3-1 得分(ACM/ICPC Seoul 2005,UVa1585) 给出一个由O和X组成的串(长度为1~80),统计得分.每个 ...
- 《算法竞赛入门经典(第2版)》
<算法竞赛入门经典(第2版)> 基本信息 作者: 刘汝佳 丛书名: 算法艺术与信息学竞赛 出版社:清华大学出版社 ISBN:9787302356288 上架时间:2014-6-5 出版日期 ...
最新文章
- 为什么使用单页应用_为什么我讨厌您的单页应用
- fs:[124]对应CurrentThread
- python字符串中某个字符修改_Python中修改字符串的四种方法
- AtCoder Grand Contest 013 题解
- html调用接口_搜狗ocr识别接口
- 数据库 流量切分_互联网大厂有哪些分库分表的思路和技巧?
- 洛谷 P1967货车运输 并查集+贪心 不需要用LCA!
- sql 非主键每年自增_或许你不知道的 10 条 SQL 技巧
- 《Asp.Net 2.0 揭秘》读书笔记(九)
- html input 字体颜色_HTML常用标签汇总
- flex布局精髓和填坑
- 中国黑客常用六种工具及防御方法(转)
- 娃哈哈的新品,为什么打动不了年轻人?
- 街头篮球一直提示服务器维护怎么解决,街头篮球为什么进不去 街头篮球进不去怎么办...
- 树莓派安装第三方操作系统
- 区分微信小程序版本(开发工具中、开发版、体验版、正式版)的方法?
- Matlab 函数atan 函数atan2 的区别
- 页面刷新指定到原先滚动条位置
- cmd 切换到 指定目录
- Spring Cloud——断路器Hystrix
热门文章
- mybatis查询返回空,SQL数据库执行有数据!
- MyEclipse2015Stable2.0安装破解
- mysql定义shell变量_shell 变量的定义,赋值,运算
- 委外订单_ERP软件教程:金蝶ERP的委外加工业务流程(一)
- 异常(Exception )
- 【OS学习笔记】十八 保护模式五:保户模式下如何进行内存保护 与 别名段的意义与作用 对应汇编代码
- 2018-2019-2-20175225 实验四《Android开发基础》实验报告
- JDBC_设计架构_驱动类加载_建立Connection_效率测试
- java读写注册表的两种方式,Preferences与jRegistry
- mysql-用正则表达式进行搜索