原创 微軟100題-求連續子數組之和的最大值+題目變形

求連續子數組之和的最大值:這個題很早前我就研究過了,百度實習面試的時候問了我一道類似的題目,就是給定兩個數組和一個數,在兩個數組中各取一個數,使其和爲輸入的值,也是該題目的一種變形,我上來就給出了一個最優的算法。然後計算時間複雜度,接着就

原创 微軟100題-求數組中的逆序對

求數組中的逆序對的個數:在數組a中如果a[i]>a[j].且i<j則<i,j>稱爲一個逆序數對,例如數組是7,5 ,6 ,4 則逆序對共有 7,5   7,6  7,4   5,4   6,4  五個逆序對,剛開始的時候沒有思路,看了看解

原创 1000桶酒中含兩桶毒酒問題

鏈接毒酒問題中給出如下問題: 國王爲10天后的生日宴會準備了1000桶酒,不幸的是,其中兩桶被下了毒。爲了確定兩桶毒酒,有人提議用死刑犯試毒。毒的潛伏期爲10天。  問:至少需要多少個死刑犯才能確保找出毒酒?方案如何實行?   這

原创 二維子數組之和的最大值

本題目是從一維的擴展過來的,題目:有一個二維M*N的二維數組,求連續的一片子數組(即組成了矩形)之和的最大值。 思路一:這麼題目最簡單的方法都是利用窮舉法,設矩陣的四個邊界爲i_min,i_max(上下邊界),j_min,j_max(左右

原创 《編程珠璣》-第二章:尋找兄弟單詞+電話簿功能 算法研究

尋找兄弟單詞:這是我百度實習筆試的時候一道題目,面試的時候在HR的房間看到了我的試卷,發現這題我只得了兩分。。。這兩分還是因爲我想到了用樹結構,不過只是簡單的26叉字典樹。。。。 當時想到應該沒有這麼簡單,可是時間緊迫阿。 題目是這樣的:

原创 優先級隊列+堆

優先級隊列 是不同於先進先出隊列的另一種隊列。每次從隊列中取出的是具有最高優先權的元素。 優先隊列是0個或多個元素的集合,每個元素都有一個優先權或值,對優先隊列執行的操作有:   Create ( ):創建一個空的優先隊列   Siz

原创 快速排序-void qsort ( int a[], int n)

#include<iostream> using namespace std; void qsort(int a[],int n) { if(n<=0) //n=0,表示只有一個元素,不用排序了 ret

原创 STL-學習筆記:關聯容器

set:所有元素都會根據元素的鍵值自動被排序不能通過set的迭代器改變set的元素值。 map:所有元素都會根據元素的鍵值自動被排序,map的所有元素都是pair,同時擁有key 和 value.map 不允許兩個元素擁有相同的鍵值。

原创 Hadoop中兩表JOIN的處理方法

原帖地址:董的博客 Dong的這篇博客我覺得把原理寫的很詳細,同時介紹了一些優化辦法,利用二次排序或者布隆過濾器,但在之前實踐中我並沒有在join中用二者來優化,因爲我不是作join優化的,而是做單純的傾斜處理,做join優化或者查詢優化

原创 擁塞控制和流量控制的區別

擁塞控制網絡擁塞現象是指到達通信子網中某一部分的分組數量過多,使得該部分網絡來不及處理,以致引起這部分乃至整個網絡性能下降的現象,嚴重時甚至會導致網絡通信業務陷入停頓,即出現死鎖現象。擁塞控制是處理網絡擁塞現象的一種機制。流量控制數據的傳

原创 百度的一期筆試題

題目和解答轉自百科中的一篇文章,但是具體答案以及給分標準是否權威,不得而知,答案和下面我的分析僅供參考,出現任何後果金子概不負責哦。 第一題 簡答(30分) 1. 請寫出C++ STL中vector的相關問題。(20分) (1)在調用

原创 STL-學習筆記:順序容器之deque

vector 和 deque的區別? 1、vector是單向開口的連續線性空間,deque是一種雙向開口的連續線性空間。 2、deque 允許常數時間內對頭端進行元素的插入和刪除操作。而vector在頭端操作效率超級差。 3、deque沒

原创 hadoop中的分佈式緩存——DistributedCache

分佈式緩存一個最重要的應用就是在進行join操作的時候,如果一個表很大,另一個表很小很小,我們就可以將這個小表進行廣播處理,即每個計算節點上都存一份,然後進行map端的連接操作,經過我的實驗驗證,這種情況下處理效率大大高於一般的reduc

原创 隨機數問題——基礎知識必備

C++標準模板庫規範每次插入操作都在O(log m)時間內完成,而遍歷集合則需要O(m)時間,所以每次查找並插入一個元素的時間是O(mlog m). 一些隨機數的庫函數:(以下來自百度百科) C庫函數 rand():rand()函數是產

原创 求無序數組的中位數

轉自:http://blog.csdn.net/zdl1016/article/details/4676882 中位數即是排過序後的處於數組最中間的元素。 不考慮數組長度爲偶數的情況。設集合元素個數爲n。 簡單的想了下: 思路1)(這個