Курс лекций для подготовки к олимпиадам по программированию Решение задач на время, или Cracking the Coding Interview Глухих Михаил Игоревич, к.т.н., доц.

Slides:



Advertisements
Similar presentations
PROGRAMMING LANGUAGE (JAVA) UNIT 42 BY ROBERT BUTTERFIELD TELEPHONE Data Structures and Algorithms.
Advertisements

Data Structures.
CS252: Systems Programming Ninghui Li Program Interview Questions.
Three database admins walked into a #NoSQL bar. They looked around, then left because they couldn't find a table.#NoSQL Cracking Coding Interviews Slobodan.
CSCE 210 Data Structures and Algorithms
CS 307 Fundamentals of Computer Science 1 Abstract Data Types many slides taken from Mike Scott, UT Austin.
UnInformed Search What to do when you don’t know anything.
Final Exam Preview Chapter 4,5,6,7,8,9. Remember to evaluate CS221  Go to  Ends tonight.
Overview CS113, Fall 2000 Gene Itkis. The Promise Heavy Fast-paced Challenging Rewarding.
1 Advanced Data Structures. 2 Topics Data structures (old) stack, list, array, BST (new) Trees, heaps, union-find, hash tables, spatial, string Algorithm.
CSCE156: Introduction to Computer Science II Instructor Stephen Scott Website
CS 315 Data Structures B. Ravikumar Office: 116 I Darwin Hall Phone: Course Web site:
Review for Test 2 i206 Fall 2010 John Chuang. 2 Topics  Operating System and Memory Hierarchy  Algorithm analysis and Big-O Notation  Data structures.
Midterm Exam Two Tuesday, November 25 st In class cumulative.
EXAM REVIEW CSC 172 SPRING 2004 LECTURE 26. Want to TA for next semester?
CSCE 3110 Data Structures and Algorithm Analysis.
C FAQ’S Collected from the students who attended technical round in TCS recruitment.
Instructor: Dr. Sahar Shabanah Fall Lectures ST, 9:30 pm-11:00 pm Text book: M. T. Goodrich and R. Tamassia, “Data Structures and Algorithms in.
Code Interview Yingcai Xiao Hari Krishna Bodicharla.
Copyright © Wondershare Software Introduction to Data Structures Prepared by: Eng. Ahmed & Mohamed Taha.
Chapter 3 List Stacks and Queues. Data Structures Data structure is a representation of data and the operations allowed on that data. Data structure is.
Data Structures and Abstract Data Types "Get your data structures correct first, and the rest of the program will write itself." - David Jones.
Review for Final Andy Wang Data Structures, Algorithms, and Generic Programming.
1 CSC 222: Object-Oriented Programming Spring 2013 Course goals:  To know and use basic Java programming constructs for object- oriented problem solving.
Overview of Course Java Review 1. This Course Covers, using Java Abstract data types Design, what you want them to do (OOD) Techniques, used in implementation.
1 Week 9 A little more GUI, and threads. Objectives: Discuss the Swing set of classes. Incorporate animation into applets. Define the term thread. Explain.
December 4, Algorithms and Data Structures Lecture XV Simonas Šaltenis Aalborg University
CS Data Structures II Review & Final Exam. 2 Topics Review Final Exam.
Elementary Data Organization. Outline  Data, Entity and Information  Primitive data types  Non primitive data Types  Data structure  Definition 
Data Structures academy.zariba.com 1. Lecture Content 1.Linear Data Structures 2.Trees and Graphs* 3.Dictionaries and Hash Tables 4.Homework 2.
Final Exam Tuesday, December 22nd 2:00 - 3:50pm room 102 Warren Weaver Hall.
Review for Final Exam – cs411/511 Definitions (5 questions, 2 points each) Algorithm Analysis (3 questions, 3 points each) General Questions (3 questions,
Data Structures for Midterm 2. C++ Data Structure Runtimes.
Introduction to Objects and Encapsulation Computer Science 4 Mr. Gerb Reference: Objective: Understand Encapsulation and abstract data types.
Final Exam Review CS Total Points – 20 Points Writing Programs – 65 Points Tracing Algorithms, determining results, and drawing pictures – 50.
Data Structures By Dr. Mehedi Masud ِAssociate Professor, Computer Science Dept. College of Computers and Information Systems Taif University 1.
Mohammed I DAABO COURSE CODE: CSC 355 COURSE TITLE: Data Structures.
Algorithm homework help For More Detail help.aspx - Phone:-
Final Exam Review CS 3358.
CSCE 210 Data Structures and Algorithms
CSC 222: Object-Oriented Programming
CSC 222: Object-Oriented Programming
Data Structures Interview Questions.
“<Fill in your definition here.>”
Data Structure Interview Question and Answers
Midterm Review.
Chapter 15 Lists Objectives
Cracking the Facebook Coding Interview I
CSC 222: Object-Oriented Programming
problems motivating classes, idioms, CS, ...
Review for Midterm Neil Tang 03/04/2010
ECET 370 HELPS Education Your Life-- ecet370helps.com.
ECET 370 Lessons in Excellence-- ecet370.com. ECET 370 Entire Course (Devry) For more course tutorials visit ECET 370 Week 1 Lab 1 ECET.
structures and their relationships." - Linus Torvalds
CSE 326: Data Structures: Midterm Review
structures and their relationships." - Linus Torvalds
Lesson Objectives Aims
Final Exam Review COP4530.
CSS 342 Data Structures, Algorithms, and Discrete Mathematics I
Introduction to Computer Science for Majors II
Week # 1: Overview & Review
Review CSE116 2/21/2019 B.Ramamurthy.
Final Review Dr. Yingwu Zhu.
Review B.Ramamurthy 4/6/2019 BR.
COP3530- Data Structures Introduction
Final Review B.Ramamurthy 5/8/2019 BR.
CSCE156: Introduction to Computer Science II
structures and their relationships." - Linus Torvalds
Abstract Data Types (ADTs)
Presentation transcript:

Курс лекций для подготовки к олимпиадам по программированию Решение задач на время, или Cracking the Coding Interview Глухих Михаил Игоревич, к.т.н., доц. mailto:

Cracking the Coding Interview  It’s a book!  Gayle Laakmann  Downloadable Основы программирования на языках C и C++ 2

General principles  Stages Resume collection Phone screening On-site interview Homework  Questions Behavioral Technical Основы программирования на языках C и C++ 3

Must have  Structures: vectors, linked lists, trees, stacks, queues, hash tables  Algorithms: BFS, DFS, binary search, merge & quick sort, simple tree operations  Concepts: bit manipulation, singleton & factory patterns, memory types (stack, static, heap), recursion, big O  Language & library details: inheritance, polymorphism, multithreading, etc. Основы программирования на языках C и C++ 4

Some interviews from personal experience…  JetBrains Mostly questions about “what does this code” and “how good is it” Homework  Which language is it? What’s the longest common substring?  Intel Specific questions about finite automata and SystemC General C++ & OOP questions  Facebook / Microsoft Основы программирования на языках C и C++ 5

General rules  Some decision is better than no decision Do it first  Good decision is better than some decision Remember about time and memory consumption Основы программирования на языках C и C++ 6

Algorithms approaches  Examplify Angle between hour & minute hands  Pattern matching Find the minimum in a rotated sorted list like this:  Simplify & generalize Is it possible to make a given ransom note from given newspaper words?  Base case & build (induction) Print all permutations of a string  Data structure brainstorm Keep track of a median in an extending list Основы программирования на языках C и C++ 7

Additional task #1  Are two strings anagrams? Основы программирования на языках C и C++ 8

Additional task #2  Design a stack that can push, pop, and get minimum  Limitation: all three operations should work in O(1) time Основы программирования на языках C и C++ 9

Additional task #3  Find the first common ancestor of two given nodes in a binary tree Основы программирования на языках C и C++ 10