- 相關(guān)推薦
不同公司面試筆試題目
阿里巴巴B2B一面
1、通配符的含義
2、死鎖的基本知識——死鎖是各大筆試面試中出現(xiàn)率50%的知識點
3、信號量P、V原語的相關(guān)知識點
4、有向圖的鄰接表表示
阿里巴巴B2B二面
1、各種排序算法的比較次數(shù)
2、static、auto未初始化的初始值
http://blog.csdn.net/hackbuteer1/article/details/7487694
3、x*=y+8,給出x,y的值,求該表達式計算后二者的值
4、enum類型的default賦值規(guī)則
5、定義函數(shù)F(int x){return (x*x);} 求F(3+5)
6、fgets(s,n,f)函數(shù)的功能
7、定義*s="ab\0cdef",輸出該字符可以看到什么結(jié)果
8、還是static相關(guān)知識——在此說明一下static這個關(guān)鍵字相當重要,在筆試中出現(xiàn)率為100%,在面試中出現(xiàn)率為50%。
9、數(shù)據(jù)庫中索引,簇索引,非簇,唯一,復(fù)合,覆蓋索引的區(qū)別
10、SQL語句和范式是對數(shù)據(jù)庫有要求的公司筆試必考點之一
5、STL中迭代器的工作原理,迭代器與普通指針有什么區(qū)別?
迭代器和指針相同的地方:
1、指針和iterator都支持與整數(shù)進行+,-運算,而且其含義都是從當前位置向前或者向后移動n個位置
2、指針和iterator都支持減法運算,指針-指針得到的是兩個指針之間的距離,迭代器-迭代器得到的是兩個迭代器之間的距離
3、通過指針或者iterator都能夠修改其指向的元素
通過上面這幾點看,兩者真的很像,但是兩者也有著下面的幾個不同地方
1、out操作符可以直接輸出指針的值,但是對迭代器進行在操作的時候會報錯。通過看報錯信息和頭文件知道,迭代器返回的是對象引用而不是對象的值,所以cout只能輸出迭代器使用*取值后的值而不能直接輸出其自身。
2、指針能指向函數(shù)而迭代器不行,迭代器只能指向容器
這就說明了迭代器和指針其實是完全不一樣的概念來的。指針是一種特殊的變量,它專門用來存放另一變量的地址,而迭代器只是參考了指針的特性進行設(shè)計的一種STL接口。
筆者曾在網(wǎng)上看到這樣一種說法:迭代器是廣義指針,而指針滿足所有迭代器要求。迭代器是STL算法的接口,而指針是迭代器,因此STL算法可以使用指針來對基于指針的非STL容器進行操作。
筆者覺得上面說法也有幾分道理,但是到底正不正確就留給看官自己判斷了。但是有一點希望大家注意的是:千萬不要把指針和迭代器搞混了。也許某些編譯器使用指針來實現(xiàn)迭代器以至于有些人會誤以為指針和迭代器是一個概念來的。
6、什么是友元?
7、delete、new的用法
8、typename的用法
9、編程判斷一個數(shù)是否為2的冪
10、你怎樣重新改進和設(shè)計一個ATM銀行自動取款機?
12、10000Mbps萬兆交換機怎么實現(xiàn)?
13、操作符重載的相關(guān)知識點,大題,具體記不清了
人民搜索的筆試題
1、打印漢諾塔移動步驟,并且計算復(fù)雜度
2、計算兩個字符串的是否相似(字符的種類,和出現(xiàn)次數(shù)相同)
3、定義二叉樹,節(jié)點值為int,計算二叉樹中的值在[a,b]區(qū)間的節(jié)點的個數(shù)
4、動態(tài)規(guī)劃題:一條路有k可坑,每次能跳平方數(shù)步長(1 4 9 16。。),不能跳到坑里,從a跳到b最少幾步?
5、給一個整數(shù)數(shù)組,求數(shù)組中重復(fù)出現(xiàn)次數(shù)大于數(shù)組總個數(shù)一半的數(shù)。
1、對以孩子兄弟鏈接的樹進行遍歷,不能用遞歸,也不能借助任何輔助空間
2、假設(shè)數(shù)組B是升序Int數(shù)組A循環(huán)移若干得到的位,實現(xiàn)對數(shù)組B進行查找的高效算法
3、只有整數(shù)和+-*/四種運算組成的算術(shù)表達書,實現(xiàn)其求值
4、還有一個是考貪心算法的,你讓他們看算法導(dǎo)論那本書,關(guān)于fractional knapsack problem的那一段,就是0-1背包的一種變形;
5、鏈表相鄰元素翻轉(zhuǎn),如a->b->c->d->e->f-g,翻轉(zhuǎn)后變?yōu)椋篵->a->d->c->f->e->g
6、求正整數(shù)n所有可能的和式的組合(如;4=1+1+1+1、1+1+2、1+3、2+1+1、2+2)
1、實現(xiàn)一個atoi函數(shù)==>'注意正負號的判定'
2、翻轉(zhuǎn)一個句子,其中單詞是正序的==>兩次旋轉(zhuǎn)
3、二叉樹兩個結(jié)點中的最小公共子結(jié)點==>求長度,長度之差,遠的先走,再一起走
4、三角陣中從第一行到最后一行(給出搜索方向的限制)找一個連續(xù)的最大和==>廣度優(yōu)先搜索√
5、實現(xiàn)一個STL中的vector中的盡量多的方法。
6、字符串移動(字符串為*號和26個字母的任意組合,把*號都移動到最左側(cè),把字母移到最右側(cè)并保持相對順序不變),要求時間和空間復(fù)雜度最小。
void Arrange(char *str , int n)
{
int i , k = n-1;
for(i = n - 1 ; i >= 0 ; --i)
{
if(str[i] != '*')
{
if(str[k] == '*')
{
str[k] = str[i];
str[i] = '*';
}
--k;
}
}
}
7、說說outer join、inner join、left join、right join的區(qū)別是什么?
內(nèi)連接:進行連接的兩個表對應(yīng)的相匹配的字段完全相同的連接。join
外連接又分為左外連接和右外連接。
左連接即LEFT OUTER JOIN:
兩個表進行左連接時會返回左邊表中的所有的行和右邊表中與之相匹配的列值沒有相匹配的用空值代替。
右連接即RIGHT OUTER JOIN:
兩個表進行右連接時會返回右邊表中的所有的行和左邊表中與之相匹配的列值沒有相匹配的用空值代替。
【不同公司面試筆試題目】相關(guān)文章:
面試筆試題目及答案08-06
微軟10道筆試面試題目08-10
2017年Java面試筆試題目09-26
銀行面試筆試題目「計算機」08-05
2017中興面試必考的筆試題目09-25
機械筆試題目08-10
國泰金融筆試題目09-26
文案策劃筆試題目11-09
筆試題目考邏輯性題目09-26
2017文員常見面試筆試題目09-25