深圳華為面試總結
阿新 • • 發佈:2019-03-10
美國 參加 off name som rec 如果 高度 ram
答案:如果一定要讓鴕鳥來繼承鳥類,可以采取組合的辦法,把鳥類中的可以被鴕鳥繼承的函數挑選出來,這樣鴕鳥就不是“a kind of”鳥了,而是“has some kind of”鳥的屬性而已。代碼如下:
#include<iostream>
#include<string>
using namespace std;
class bird
{
public:
void eat();
void sleep();
void fly();
};
class ostrich
{
public:
bird eat(){cout<<"ostrich eat";};
bird sleep(){cout<<"ostrich sleep";};
};
int main()
{
ostrich xiaoq;
xiaoq.eat();
xiaoq.sleep();
return 0;
}
面試例題2:Find the defects in each of the following programs, and explain why it is incorrect.(找出下面程序的錯誤,並解釋它為什麽是錯的。) [中國臺灣某著名殺毒軟件公司2005年面試題]
#include <iostream>
using namespace std;
class Base {
public:
int val;
Base() { val=1;};
};
class Derive: Base {
public:
int val;
Derive(int i) { val=Base::val+i; };
};
int main(int, char**, char**) {
Derive d(10);
cout<<d.Base::val<<endl<<d.val<<endl;
return 0;
}
答案:把class Derive: Base改成class Derive:public Base。
解析:這是個類繼承問題。如果不指定public,C++默認的是私有繼承。私有繼承是無法繼承並使用父類函數中的公有變量的。
擴展知識(組合)
若在邏輯上A是B的“一部分”(a part of),則不允許B從A派生,而是要用A和其他東西組合出B。
例如眼(Eye)、鼻(Nose)、口(Mouth)、耳(Ear)是頭(Head)的一部分,所以類Head應該由類Eye、Nose、Mouth、Ear組合而成,而不是派生而成。程序如下:
class Eye
{
public:
void Look(void);
};
class Nose
{
public:
void Smell(void);
};
class Mouth
{
public:
void Eat(void);
};
class Ear
{
public:
void Listen(void);
};
class Head
{
public:
void Look(void) { m_eye.Look(); }
void Smell(void) { m_nose.Smell(); }
void Eat(void) { m_mouth.Eat(); }
void Listen(void) { m_ear.Listen(); }
private:
Eye m_eye;
Nose m_nose;
Mouth m_mouth;
Ear m_ear;
};
Head由Eye、Nose、Mouth、Ear組合而成。如果允許Head從Eye、Nose、Mouth、Ear派生而成,那麽Head將自動具有Look、Smell、Eat、Listen這些功能。程序十分簡短並且運行正確,但是下面這種設計方法卻是不對的。
class Head : public Eye, public Nose, public Mouth, public Ear
{
};
面試例題3:Find the defects in each of the following programs, and explain why it is incorrect.(找出下面程序的錯誤,並解釋它為什麽是錯的。)[德國某著名軟件咨詢企業2005年面試題]
class base{
private: int i;
public: base(int x){i=x;}
};
class derived: public base{
private: int i;
public: derived(int x, int y) {i=x;}
void printTotal() {int total = i+base::i;}
};
解析:要在子類中設定初始成員變量,把derived(int x, int y)改成derived(int x, int y) : base(x)。
答案:
代碼如下:
class base
{
protected: //這裏的訪問屬性需要改變
int i;
public:
base(int x){i=x;}
};
class derived: public base
{
private:
int i;
public:
derived(int x, int y) : base(x) //以前沒有初始化基類的成員變量
{
i=y;
}
void printTotal()
{
int total = i+base::i;
}
};
深圳華為面試
第二次是深圳華為公司。說起來還有點搞笑。和大家一樣,剛開始網投華為,第一誌願是華為西安研究所(研發類)。然後華為給我打電話,但當時我有事在北京回不來。10月13號下火車,然後當天去酈苑酒店“強面”,但被告知無法參加華為西安研究所(研發類)的面試,隨轉行參加深圳IT管理的面試。13號一面結束,14號參加二面、三面、四面。二面結束後我和女朋友出去逛,也不敢走太遠,因為怕隨時給我來電話。天氣很冷,我買了個烤白薯暖手,這時通知三面的電話響起,我忙不叠地往樓上跑,白薯就放在褲子後面的口袋裏。面式結束後發現白薯都被我坐扁了。下午參加四面,晚上打電話通知給offer。這就是我兩天搞定華為的經歷。
下面說說我面試的具體細節:華為的一、二、三、四面分別在酈苑酒店的2樓、3樓、4樓和5樓。每面試成功一次就往上走一層。
一面的是一個很和藹的哥哥,不過說話聲音比我還小。他翻了翻簡歷,看了成績單,問我在什麽方面學得好,我就說英語。他說在專業方面呢,我就大致說了一下我們專業的情況,學習的課程什麽的,等等。然後他給我出了兩道題,就是本書遞歸一章的打靶問題,其他人有的出的是智力測試,比如說飛機環航問題。反正我基本上很快編出了程序。然後還是一些無關緊要的聊天。後來他又問我對信息管理是否了解,我就把自己了解的東西一股腦說了出來,不過也說不了多少。然後他就說不只這些,開始給我解釋。接著問我對華為有多少了解,我就把自己知道的說了一下。最後他說讓我回去等消息。大概晚上9點左右電話通知我明天早上面試。
二面是一個綜合的面試。面試官先讓我自我介紹,然後問了些興趣愛好、性格之類的。他翻簡歷看到了我做過的教務管理系統和網絡選課系統。他詳細問了項目的組成原理和架構設計,以及你在項目中的貢獻等。然後我就解釋了一下。然後我補充說我曾經寫過一本書,把內容又說了一下。在這裏簡歷還是很重要的,他們面試的時候總是會拿著簡歷問你一些相關的問題,所以面試的時候一定要把這些都好好準備一下。還有成績單,華為好像很看重這個,特別是本科生。最好把自己學得好的科目大致復習一下,有可能會問到相關的問題。二面完了,然後拿了表填好了等待三面。
三面在4樓,我和一個女生共同面對面試官。面試官坐在床上,問了很多問題。他先解釋了一下工作地點的選擇,然後就開始問都做過什麽項目,說一下你自己認為做得最成功的事,都遇到過什麽樣的挫折,影響最深的是什麽,等等。後又說“華為你們也知道,會很累的……讓我們談一下自己的看法。你們兩個應聘信息管理,對這個職位怎麽看,了解不?”他以一對二,不是每個人都得回答每一個問題。他會挑著讓你去回答,而且在你回答的時候會對你說的繼續提問,不斷地抹殺你的觀點,有點像壓力測試,所以在面試的時候一定不要讓自己的話有漏洞。即使有也要想辦法來說明,不過這個還是比壓力測試會好一些,不會把你否認得一無是處。總之他會刁難你,應該是測你的抗壓能力和臨場反應能力。
最後是四面。四面就是華為的高層來隨便聊聊,沒有什麽問題了,是一對一的,他填個表,然後就給口頭offer了。過了一面、二面而且填了表的同學千萬不能大意,也得好好準備一下。我同學就可憐地栽在三面了。四面後當晚正式打電話給offer。
平時多面試一下,增加自己的經驗也是很必要的。對於這些常見的問題,最好都準備一下,如:自我介紹,你自己最大的優點、缺點,自己認為最成功的事,最尷尬的事,等等。
分享一下我老師大神的人工智能教程吧。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智能的隊伍中來!http://www.captainbed.net
面試例題1:如果鳥是可以飛的,那麽鴕鳥是鳥麽?鴕鳥如何繼承鳥類?[美國某著名分析軟件公司2005年面試題] 解析:如果所有鳥都能飛,那鴕鳥就不是鳥!回答這種問題時,不要相信自己的直覺!將直覺和合適的繼承聯系起來還需要一段時間。 根據題幹可以得知:鳥是可以飛的。也就是說,當鳥飛行時,它的高度是大於0的。鴕鳥是鳥類(生物學上)的一種。但它的飛行高度為0(鴕鳥不能飛)。 不要把可替代性和子集相混淆。即使鴕鳥集是鳥集的一個子集(每個駝鳥集都在鳥集內),但並不意味著鴕鳥的行為能夠代替鳥的行為。可替代性與行為有關,與子集沒有關系。當評價一個潛在的繼承關系時,重要的因素是可替代的行為,而不是子集。再分享一下我老師大神的人工智能教程吧。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智能的隊伍中來!http://www.captainbed.net
深圳華為面試總結