原创 計算兩個有序數組的交集

#include<iostream> using namespace std; //採用二路歸併法,查找兩個數組的交集進行保存,並返回交集的個數。

原创 在已經排好序的數組中統計給定數字出現的次數

首先通過二分查找法,在數組中查找是否存在所給定的數字,若可以找到,則在此數的前後再進行查看,看是否存在連續的一樣的數字,進行統計。 程序如下: #include<iostream> using namespace std; int Bin

原创 使用遞歸算法判斷數組遞增!!

#include<iostream> using namespace std;//使用遞歸算法對數組進行判定的函數!! bool Result(in

原创 如何用一個 FOR 循環打印出一個二(三)維數組

#include<iostream> using namespace std; const int X=2; const int Y=5; cons

原创 如何用遞歸實現數組求和

#include<iostream> using namespace std; int Sum(int *p,int n) {return n==0

原创 找出有序數列中符合條件的數對的個數

問題描述:一個有序整數數組,元素取值可能是 1--N  中的任何一個,相同的數值不會重複出現。 設計一個算法:找出有序數列中符合條件的數對的個數,滿足數對中兩數之和爲 N+1 使用二分法查找,用兩個指針分別指向最開始和最後的一個數,從兩端

原创 在時間複雜度爲 O(n) 內找出數組中出現次數超過一半的數

#include<iostream> using namespace std; //在時間複雜度爲 O(n) 內找出數組中出現次數超過一半的數 int Find(int *a,int n) {if(n<0)return -1;int Nu

原创 在 1--N 的連續數組中找出唯一重複的元素

採用兩種方法:求和法和異或法 #include<iostream> using namespace std; //採用求和的方法 int Find_sum(int *a,int n) {int sum=0,sum1=0;   //用 su

原创 使用遞歸和非遞歸兩種方法實現二分查找!!!

#include<iostream> using namespace std; //非遞歸的方法 int F_BinarySearch(int a[

原创 數組選擇(簡單)排序

基本原理:對於給定的數組,經過第一輪比較後得到最小數,然後將該最小數與第一個數的位置進行交換,接着對剩下的數進行類似的查找,交換操作,直到只剩下一個數爲止。此算法的複雜度爲:O(n^2)。(參考程序員面試筆試寶典--何昊) 程序如下: #

原创 插入排序

#include<iostream> using namespace std; //插入排序 void Insert_Sort(int *a,int n) { int i,j; for(i=0;i<n;i++) { int t

原创 如何找出數組中出現次數爲奇數次的唯一元素

採用異或的方式進行結果的搜索!!! #include<iostream> using namespace std; //找出數組中出現次數爲奇數次的唯一元素 int Find_JI(int *a,int n) {int result=0;

原创 尋找連續數組中缺失的數字!!

問題:給一個由 n-1 各整數組成的未經排序的數列,其元素都是 1--n  中的不同的整數。如何找出缺失的整數?? 算法設計:採用求和法進行查找。 #include<iostream> using namespace std; //找出

原创 leetcode難度及面試頻率

文章出處:點擊打開鏈接               1 Two Sum 2 5 array sort         set

原创 十道海量數據處理面試題與十個方法大總結

原文出處:點擊打開鏈接 海量數據處理:十道面試題與十個海量數據處理方法總結 作者:July、youwang、yanxionglu。 時間:二零一一年三月二十六日 本文之總結:教你如何迅速秒殺掉:99%的海量數據處理面試題。有任何問