不需要额外空间的交换函数的弊端
来源:互联网 发布:中国家居建材 知乎 编辑:程序博客网 时间:2024/06/05 15:41
#include<stdio.h>void exchange(int &a, int &b){ a = a + b; b = a - b; a = a - b;}
这个交换函数有一个缺点,如果两个参数是来自同一个地址的,那么这个地址储存的值就会变成零。比如说这个例子:
#include<stdio.h>void exchange(int &a, int &b){ a = a + b; b = a - b; a = a - b;}main(){ int a[] = {1}; exchange(a[0], a[0]); printf("%d,%d",a[0]);}
这是这个例子的输出,可以看到原本是等于1的a[0]变成了0。
阅读全文
0 0
- 不需要额外空间的交换函数的弊端
- 异或运算交换两个元素位置,不需要额外空间
- 不用额外空间,交换两个数的值.
- 不用额外空间来交换 a b 值的方法
- 不开额外空间,交换A,B的值
- 不占用额外空间 交换两个变量的值
- 不需要数组和额外空间的单向链表逆序实现
- 不占用任何额外空间的情况下交换两个数的值
- 不占用任何额外空间的情况下交换两个数的值
- layout_weight 额外空间的分配
- 如何交换a和b两个整数的值,不用额外空间
- 不使用额外空间实现两个变量(int 型)的交换
- 如何交换a和b两个整数的值,不用额外空间
- 字符串翻转的两种方法(1:利用额外空间 2:交换)
- 如何不适用任何额外空间,交换两个数的值
- 不用额外空间的整数交换以及时间复杂度为O(n)空间复杂度为O(1)的排序算法
- 横屏EditText不需要额外的输入框,软键盘判断
- 不用额外空间,交换两个数
- IMWeb提升营Day4 | 训练题19:顺时针打印矩阵
- bzoj1770[Usaco2009 Nov]lights 燈 高斯消元
- AR移动应用开发(三) Unity与Android的Back键冲突解决
- SpringMVC学习笔记(六):如何返回数据
- Ubuntu16.04安装IntelCaffe(根据官方文档)
- 不需要额外空间的交换函数的弊端
- mybatis-映射器-insert元素,update,delete元素
- 【VBA】单元格合并思路
- 为什么要配置环境变量?
- Ubuntu 16.04/14.04安装SS与Chrome
- 人机大战第三局,柯洁中盘认输意义何在?
- 【VBA】动态数组
- 450. Delete Node in a BST
- Android自定义一个ActivityManager管理类笔记