交換函式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的三種實現方法
本文采用三種方式實現兩個數之間的交換,分別是①藉助輔助變數temp的swap函式,②採用加減法的swap函式 ,③使用異或運算的swap函式。 現在直奔主題: 1、藉助輔助變數temp的swap函式
交換函數swap的三種實現方法
tools view art pbo class -m tails 鏈接 clip http://blog.csdn.net/GarfieldEr007/article/details/48314295 本文采用三種方式實現兩個數之間的交換,分別是①借助輔助變量temp的s
C#使用DataSet Datatable更新數據庫的三種實現方法
從數據 數據庫 設計 dddddd 操作註冊表 同時 包含 一個 自動 本文以實例形式講述了使用DataSet Datatable更新數據庫的三種實現方法,包括CommandBuilder 方法、DataAdapter 更新數據源以及使用sql語句更新。分享給大家供大家參
PHP開發之遞歸算法的三種實現方法
簡單的 靈活運用 要掌握 發布 容易 lob 實現原理 出現 無限分類 遞歸算法對於任何一個編程人員來說,應該都不陌生。因為遞歸這個概念,無論是在PHP語言還是Java等其他編程語言中,都是大多數算法的靈魂。對於PHP新手來說,遞歸算法的實現原理可能不容易理解。但是只要你了
php 遞迴函式的三種實現方式 php利用遞迴函式實現無限級分類
遞迴函式是我們常用到的一類函式,最基本的特點是函式自身呼叫自身,但必須在呼叫自身前有條件判斷,否則無限無限呼叫下去。實現遞迴函式可以採取什麼方式呢?本文列出了三種基本方式。理解其原來需要一定的基礎知識水品,包括對全域性變數,引用,靜態變數的理解,也需對他們的作用範圍有所理解。遞迴函式也是解決無限級分類的一個很
執行緒的三種實現方法
執行緒的三種實現方法:(1)繼承 Thread 類,重寫run()方法; (2)實現 Runnable 介面,重寫run() 方法; (3)實現 Callable 介面,重寫call()方法; 方式一: 繼承Thread類 public class MyThreadDemo {
Mybatis逆向工程之三種實現方法
ntb roo obj tar ges detail 是否 href rip 1.逆向工程之原始方法 (1)下載兩個jar包:mysql-connector-java(6.x版本及以上的和5.x版本有所區別,主要是驅動和時區;詳情參見:https://blog.csdn.n
初夏小談:斐波那契三種實現方法(C語言版)(第三種相信你沒見過)
斐波那契數列(Fibonaccisequnce),又稱黃金分割數列。研究斐波那契數列有相當重要的價值,例在現代物理、準晶體結構、化學等領域都有直接的應用。因此研究斐波那契數列也是很有必要的。 今天初夏將為大家帶來計算斐波那契數列第n位的三種方法 第一種利用遞迴的方法計算,程式碼相當簡單,但其
ASP.NET後臺呼叫前臺JS函式的三種常見方法
第一種:使用普通的新增控制元件中的Attributes屬性進行呼叫 例如,像一般的普通的按鈕:Button1.Attributes.Add("onclick","MyFun();"); 此方法只能在Onload中或者類似於onload的初始化過程中新增才有效。並且是先執行指令碼函式,同時
Android-響應按鈕的點選三種實現方法
一、使用反射方式來實現按鈕的點選 新增一個onButtonClicked方法 public void onButtonClicked(View view) { TextView tex
c++ STL中sort函式的三種使用方法
複習一下~ STL,C++中的標準模板庫, 使用起來方便並且效率較高; sort函式有三種用法: 一:對基本型別陣列從小到大排序 sort( 陣列名+n1,陣列名+n2); 將陣列中下標從n1到n2的元素進行從小到大排序,不包括n2,通過n1,n2 可以對整
函式的三種定義方法
一、使用關鍵字 function 方法名稱(引數列表) { 方法體和返回值 } 注意1:引數列表中的引數不需要寫型別(var),直接寫引數名稱
C#計時器的三種實現方法
在原博基礎上學習,然後自己重新設計實現了一遍。 在.NET中有三種計時器: 一、 System.Windows.Forms名稱空間下的Timer控制元件,和所在的Form屬於同一個執行緒。Timer控制元件只有綁定了Tick事件和設定Enabled屬性為True之後才會自
IO多路複用的三種實現方法
IO多路複用 定義:同時監控多個IO事件,當哪個IO事件準備就緒就執行哪個IO事件。 以此形成可以同時操作多個IO的併發行為,從而避免一個IO阻塞,造成所有IO都無法執行 IO事件準備就緒:是一種IO必然要發生的臨界狀態。 IO多路複用的程式設計實現 1.將IO
Android定製RadioButton樣式三種實現方法
@Override public boolean onTouchEvent(MotionEvent event) { if(event.getActionMasked() == MotionEvent.ACTION_DOWN){ this.setBackgroundResource(com.wxg.
C語言中返回字串函式的四種實現方法
其實就是要返回一個有效的指標,尾部變數退出後就無效了。 使用分配的記憶體,地址是有效 char *fun() { char* s = (char*)calloc(100, sizeof(char*) ); if (s)
JavaScript中函式的三種定義方法
JavaScript中函式定義的三種方法。 函式的三種定義方法分別是:函式定義語句、函式直接量表達式和Function()建構函式的方法。下面依次介紹這幾種方法具體怎麼實現。 1. 函式定義語句 //求和函式 function sum(a,b){ return a+b;
C++返回字串函式的幾種實現方法
C++返回字串函式有四種方式: 1。使用堆空間,返回申請的堆地址,注意釋放 2。函式引數傳遞指標,返回該指標 3。返回函式內定義的靜態變數(共享) 4。返回全域性變數 1.使用堆空間,返
C#/.NET 單例模式——懶漢式,餓漢式,三種實現方法
C# 單例模式 ——懶漢式,餓漢式# 註釋: /// 單例模式 /// /// 餓漢式 :第一時間建立例項,類載入就馬上建立 /// 懶漢式 :需要才建立例項,延遲載入 /// /// 單例模式會長期持有一個物件,不會釋放 /// 普通例項使用完後釋放 /// /// 單例
Android 圖片模糊、高斯模糊、毛玻璃的三種實現方法
轉載自:http://blog.csdn.net/fan7983377/article/details/51568059 效果圖: 原文連結:點選訪問 這使用也很簡單,匯入依賴,使用模糊方法就行,就這兩步搞定 依賴: <code class="hljs