
algorithm
liyun422828
这个作者很懒,什么都没留下…
展开
-
C或C++中不用中间变量交换两变量的值
记得上次跟一朋友讨论关于交换两变量的值而不用中间变量的值的问题时,我没仔细想就告诉他说不能实现,因为作为交换必须得有第三变量。其实,当时只是进入了一个误区,认为交换只能通过移动变量来实现。现在觉得有点不好意思了,毕竟发现自己学得不太踏实而且很不严谨。以下是关于变换两变量(而不用中间变量)的方法,其基本思想就是进行代数或逻辑上的变换和值累加得到。1.推荐方法:此方法仅用到了加法和减法,效率高,易理解。(1)函数:void swap(int &a,int &b){a+=b;b=a-b;a=a-b;}(2)宏定义转载 2011-05-08 09:37:00 · 737 阅读 · 0 评论 -
单链表逆序详解
http://blog.sina.com.cn/s/blog_71319eae0100tlz7.html1、具有链表头的单链表一段单链表逆序的程序 typedef struct student{ int number; char name[20]; int score; struct student *next;}student;转载 2011-10-21 12:04:24 · 459 阅读 · 0 评论