프로그래머 코드의 인터뷰를 여러 가지 형태 : 1) 커널이 쓰기는) 화이트 보드에 완전한 프로그램 3) 손으로 작성된 코드를 작성하는

레벨 1 : 쓰기 커널

질문 면접관 일부 기업은이 알고리즘은, 다른 헤더 파일, 쓰기에 필요하지 않습니다 main () 함수의 핵심 기능을 달성하기 위해 인터뷰 알고리즘 동안 쓰기 때문이다. 코드의 인터뷰 가장 낮은 어려움이 형태만큼 라인의 쓰기 기능, 그러나 또한 단지 일반적인 생각을 볼 수있는 인터뷰를 찾습니다.

이러한 질문은, 그래서 당신은 최대 폭을 추구, 그 대답은 존입니다, 질문의 이진 트리 기억 때 나는 필기 시험을 만난 텍스트 상자 (시운전되지 않음)

LeetCode에 대한 질문은 함수 인터페이스 (API)를 작성하는 방법을 요구하고있다
그림 삽입 설명 여기

레벨 2 : 쓰기 완전한 프로그램

: 우리가 인터뷰 할 때 여러 번, 그래서의 경우 80 %, LeetCode은 당신이 플랫폼 기능을 쓰기에 집중하자로이 발생하지 않습니다 는이 주제 인터뷰, 다음 (유사한 IDE 그들이 제공하는 플랫폼에 당신을하자 그러나 일반적으로 코드 힌트가없는) 포함되어야이 문제를 해결하기 위해 완전한 프로그램을 작성 #include <iostream> int main ..., 당신은 자신을 테스트해야합니다, 그 결과는 면접을보기 위해 나왔다

괜찮 그래서 우리가 일반적으로, OJ의 형태로 할 수 있지만, 이진 트리가 발생하는 문제가, 당신이 당신의 자신의 이진 트리 이진 트리를 구축 할 필요가 무엇이 양식은, 코드는 좀 더 길어질 수 있습니다. 당신은 일반적으로 너무 LeetCode에 얼굴 질문에 익숙해 쓰기, 우리는 완벽한 훈련 프로그램을 작성하는 방법을 찾아야합니다

예를 들면 다음과 같습니다 에 LeetCode 1367. 이진 트리의 목록 이 주제는 내가 IDE에서 완벽한 프로그램을 작성
그림 삽입 설명 여기
일반적으로 사용되는 템플릿

// 情况一
// create an array
// 5
// 1 2 3 2 2
vector<int> arr;
int n, d;
cin >> n;
while (n-- && cin >> d) {
    arr.push_back(d);
}

// 情况二
struct TreeNode {
    int val;
    TreeNode *left;
    TreeNode *right;
    TreeNode(int x)
        : val(x)
        , left(NULL)
        , right(NULL) {
    }
};

// create tree by preorder, -1 means NULL
TreeNode *createTree() {
    int d;
    cin >> d;
    if (d == -1) return NULL;
    TreeNode *root = new TreeNode(d);
    root->left = createTree();
    root->right = createTree();
    return root;
}

// 情况三
struct ListNode {
    int val;
    ListNode *next;
    ListNode(int x)
        : val(x)
        , next(NULL) {
    }
};

// create linked list, -1 means NULL
ListNode *createList() {
    int d;
    cin >> d;
    if (d == -1) return NULL;
    ListNode *head = new ListNode(d);
    head->next = createList();
    return head;
}

레벨 3 : 화이트 보드 필기 코드

이 양식은 (구글처럼, 바이트, 알리 바바 등을 구타하는) 화이트 보드에 쓴 코드가 필요합니다 일반적으로 제조업체에서, 가장 어려운

여기에 화이트 보드 메모장, Word 문서 수 있습니다, 또는 당신이 알고리즘 프레임 워크에 펜을 사용할 수 있도록, 당신에게 백지, A4 용지의 조각을 제공 할 장면에서 수 있으며, 인터뷰 용으로 작성된 코드를 볼 수

그림 삽입 설명 여기
기존의 프로그래밍 환경에 비해, 화이트 보드는 자신이 좋아하는 도구, 낯선 환경에서 쓰기 코드의 부재에서 인터뷰하도록 강요합니다. 이렇게하면 긴장 인터뷰 과정에서 쉽게 실수를 일으킬 수 있으며, 당신이 접근하고 낯선 환경에서 문제를 만났을 때 생각의 방법 또한 회사 중 하나가 당신의 기준을 고려 될 것입니다,

효과적으로 면접관의 전반적인 품질을 검사 할 수 있습니다 화이트 보드 인터뷰, 면접관은 더 일반적인 관심사입니다 :; 다른 사람들과 의사 소통 능력, 당신은 좌절 탄력성 시간을 발생, 당신은 새로운 문제가 발생 생각하는 능력이 나타납니다 피드백 기능의 작업은, 당신의 생각은 코드 구조가 구성 여부, 분명하다, 코드의 가독성, 유지 보수 등

화이트 보드 교육 방법 인터뷰

파쇄 된 알고리즘 단계 :

  1. 제목의 의미를 확인하기 위해 인터뷰와 함께, 제목을 얻으려면, 까다로운 질문을 피하기 당신은 보조 공간을 사용할 수 있는지 여부, 어떤 요구 사항 등 얼마나 많은 시간 복잡도 요청
  2. 사고 후 사고 알고리즘 프레임 워크 작성 및 면접와 통신
  3. 자신의 아이디어를 작성하는 의견, 함수 선언
  4. 불법 입력, 경계를 분석,
  5. 공식 문제 해결, 코멘트에 중요한 단계
  6. 필기 시험
  7. 필기 시험 절차, 면접관으로 실행하는 볼

많은 경우에, 당신은 당신이 코드 힌트 정렬 코드 프레임 워크에 익숙해 있기 때문에, 당신은 혼동 될 수 있습니다 당신은 종이에 알고리즘을 작성할 수 있습니다, 폐쇄 컴퓨터를 찾을 수

화이트 보드 또는 흰 종이에 쓰기 코드그것은 매우 당신의 프로그래밍 기술을 향상되지만, 또한 도움은 생각의 방법을 훈련, 메모리 프로그래밍 어휘를 향상메모리의 전체 주제에 대한 이해와 아이디어를 심화

코드 프로그래머 인터뷰의 필기 의미?

프로그래머가 손으로 쓴 코드를 인터뷰했다, 손으로 쓴 코드는 정말 동일한 작업을 수행?

게시 된 308 개 원래 기사 · 원 찬양 149 ·은 15 만 + 조회수

추천

출처blog.csdn.net/qq_43827595/article/details/104762116