交换函数swap的三种实现方法
本文采用三种方式实现两个数之间的交换,分别是①借助辅助变量temp的swap函数,②采用加减法的swap函数 ,③使用异或运算的swap函数。
现在直奔主题:
1、借助辅助变量temp的swap函数
I、引用类型形参
void swap(int &a, int &b) //引用类型方式
{int temp; //辅助变量temp = a;a = b;b = temp;
}
II、指针类型形参
void swap(int *a, int *b)
{int temp;temp = *a;*a = *b;*b = temp;
}
2、采用加减法的swap函数
void swap(int &a, int &b)
{a = a + b;b = a - b;a = a - b;
}
3、使用异或运算的swap函数
void swap(int &a, int &b)
{a = a ^ b;b = a ^ b;a = a ^ b;
}
交换函数swap的三种实现方法相关推荐
- php递归实现sum函数,php递归函数三种实现方法及如何实现数字累加
搜索热词 递归函数在编程中是比较常用的一类函数,其特点是函数自身可以调用自身,但是必须在调用自身前有条件判断,否则会导致无限调用下去.本文列出了三种递归函数实现方法,第一种利用引用做参数,第二种利用全 ...
- (C++)用指针实现两数交换函数swap()的两种方法
#include<cstdio>//用指针写swap()函数 void swap_1(int* p1,int* p2){int temp = *p1;*p1 = *p2;*p2 = tem ...
- C++函数指针的三种定义方法
一.C的函数指针定义方法 定义一个两个int参数,一个int返回值的函数指针类型 typedef int (*func)(int,int) 定义一个两个int参数,一个int返回值的函数指针 int ...
- 将python中的小数直接进位的函数_python保留小数位的三种实现方法
python保留小数位的三种实现方法 前言 保留小数位是我们经常会碰到的问题,尤其是刷题过程中.那么在python中保留小数位的方法也非常多,但是笔者的原则就是什么简单用什么,因此这里介绍几种比较简单 ...
- JavaScript中函数的三种定义方法
JavaScript中函数定义的三种方法. 函数的三种定义方法分别是:函数定义语句.函数直接量表达式和Function()构造函数的方法.下面依次介绍这几种方法具体怎么实现. 1. 函数定义语句 // ...
- 冒泡法排序函数c语言,【C语言】冒泡法排序的三种实现方法
冒泡法的三种排序方法: 1.数组排序 #include//#includeint main() { int i; int j; int tmp; int arr[8] = { 1, 3, 5, 7, ...
- 第二周项目1函数参数传递的三种方式
/* .*Copyright (c) 2014,烟台大学计算机学院 *All right reserved. *文件名称:函数参数传递的三种方式.cpp *作者:彭子竹 *完成日期:2015年9月11 ...
- Topk问题的三种求解方法
Topk问题的三种求解方法 什么是Topk问题 方法一:堆排序法 方法二:把N个数建堆,取出前k个 方法三:建一个k个数的堆 什么是Topk问题 其实顾名思义,这个问题也就是在N个数中找出前k个最值. ...
- python函数拟合不规则曲线_python 对任意数据和曲线进行拟合并求出函数表达式的三种解决方案...
第一种是进行多项式拟合,数学上可以证明,任意函数都可以表示为多项式形式.具体示例如下. ###拟合年龄 import numpy as np import matplotlib.pyplot as p ...
最新文章
- 【面试 spring】【第七篇】spring的问题
- 用php写shell,php与shell实现多线程的简单例子
- MyBatis多对多关联查询示例——MyBatis学习笔记之十八
- java代码隐藏面消除算法,java常面的几种排序算法
- Theano 编程核心
- 图片少量显示 9张一下 类似微信,微博客户端
- java官方编译器_JAVA 编译器
- java实现简单QQ登录界面
- ROS kinetic自定义路径规划算法
- JavaScript阿拉伯数字“1“转中文数“一“
- DevC++和ege19.01版本图形库的配置安装
- 数据分析基础-假设检验原理详解
- 矩阵最简行阶梯型计算器_商人懂技术,谁也挡不住——首位将机械计算器推向全世界的人...
- [ERROR] InnoDB: Attempted to open a previously opened tablespace
- 除法运算符号“/” ——不同形式参数,商的不同
- Office 2007的VBA,以及Office开发的随想
- 八.deepin V20.6安装mysql8.0.30
- STM32系列 STM32F4xx SPI Flash-读写操作
- 安徽大学正方教务系统 用JS 一键完成 教师评价
- FFmpeg -- 解码视频
热门文章
- GDB中应该知道的几个调试方法
- Visual Studio 2013开发 mini-filter driver step by step (1) - 创建 mini filter driver 工程
- 布道微服务_04服务的注册与发现
- MySQL - 索引优化案例实操
- Spring4.X系列之Spring JDBC
- TCP/IP 协议标准简单描述
- matlab 添加环境变量,CentOS 添加环境变量的三种方法
- 复习笔记(三)——C++类和对象
- z变换公式表_各种钣金折弯极限尺寸计算公式汇总,干货!
- SLAM知识[7]:依赖项和安装