CS 323 Lecture 1. Design and Analysis of Algorithms. Hoeteck Wee
|
|
- Elinor Douglas
- 5 years ago
- Views:
Transcription
1 { CS 323 Lecture 1 } Design and Analysis of Algorithms Hoeteck Wee hoeteck@cs.qc.cuny.edu
2 Algorithmic ideas are pervasive APPLICATIONS. Economics, auctions and game theory Biology, genes and genomes Combinatorial optimization Internet search and massive data sets THIS COURSE. techniques for the design and analysis of algorithms also, implementation of these algorithms in python prerequisites: CS 220, CS 313, basic programming skills Hoeteck Wee CS 323 Aug 30, / 17
3 Administration BIRDS ACCOUNT. login via ssh to owl.cs.qc.edu username/password = first two letters of last name + first two letters of first name + last 4 digits of student ID instructor has read access to your home directory. HOMEWORK. written and programming assignments. no late submissions for homework drop two lowest homework scores programming assignments submitted via birds account. Homework 1 out by this Wed (Sep 1) and due Sep 12 (Sun) MIDTERMS. dates are tentatively Oct 6, Nov 3, Dec 1. no rescheduling. Hoeteck Wee CS 323 Aug 30, / 17
4 Homework 0 TASKS. 1. change your password. 2. create a directory submit in your home directory. 3. create a file submit/my .txt containing your address. 4. play with python. DEADLINE. sep 8 (wed) at pm Hoeteck Wee CS 323 Aug 30, / 17
5 Python overview BASICS. interpreted language (i.e. no need to compile) get help in interpreter using help(<object>) or dir() PROPERTIES. dynamically, implicitly typed (i.e. you don t have to declare variables) case sensitive object-oriented (i.e. everything is an object) % python >>> a = [1, 2, 3] >>> a[0] 1 >>> a[1:] [2, 3] >>> i, j = 1, 2 Hoeteck Wee CS 323 Aug 30, / 17
6 Python overview a = [2,5,8] for i in range(3): # range(3) returns [0,1,2] if a[i] > 2: print a[i] SYNTAX. no mandatory statement termination characters (vs ; in java) blocks are specified by indentation (vs { } in java) FLOW CONTROL STATEMENTS. if, for and while Hoeteck Wee CS 323 Aug 30, / 17
7 A SAMPLE OF ALGORITHMS
8 Computing the maximum PROBLEM. given a list a of n numbers, compute the maximum. ALGORITHM. max = a[0] for i in range(1, n): if a[i] > max: max = a[i] return max RUNNING TIME. linear time O(n), i.e. running time is at most a constant factor times input size Hoeteck Wee CS 323 Aug 30, / 17
9 Merging sorted lists PROBLEM. combine two sorted lists a, b into a single sorted list. ALGORITHM. i, j, out = 0, 0, [] while both lists are non-empty: if a[i] <= b[j]: append a[i] to out and increment i else: append b[j] to out and increment j append remainder of nonempty list to out RUNNING TIME. linear time O(n) Hoeteck Wee CS 323 Aug 30, / 17
10 Sorting a list PROBLEM. sort a list a of n numbers. ALGORITHM. divide-and-conquer def mergesort(a): if len(a) <= 1: return a else: mid = len(a)/2 return merge(mergesort(a[:mid]), mergesort(a[mid:])) RUNNING TIME. O(n log n) Hoeteck Wee CS 323 Aug 30, / 17
11 Closest pair of points PROBLEM. given a list of n points in the plane (x 1, y 1),..., (x n, y n), find the pair that is closest. ALGORITHM. try all pairs of points min = (x 1 x 2) 2 + (y 1 y 2) 2 for i in range(1, n+1): for j in range(i+1, n+1): d = (x i x j) 2 + (y i y j) 2 if d < min: min = d return min RUNNING TIME. quadratic time O(n 2 ) Hoeteck Wee CS 323 Aug 30, / 17
12 Large contiguous sums PROBLEM. Given an array a of n integers positive and negative, find the largest sum of contiguous integers. EXAMPLE. a = [ 1, 3, 2, 7, 4, 2, 2, 3, 1], output: = 7. ALGORITHM. Compute sums of all sequences of contiguous integers maxsum = 0 for i in range(n): for j in range(i+1, n): sum = 0 # compute a[i]+...+a[j-1] for k in range(i,j): sum += a[k] if sum > maxsum: maxsum = sum return maxsum RUNNING TIME. O(n 3 ) Hoeteck Wee CS 323 Aug 30, / 17
13 Binary search PROBLEM. given a sorted list a of n numbers, determine if item is in a. ALGORITHM. binary search def bsearch(a, item): if len(a) == 0: return False else: mid = len(a)/2 if a[mid]==item: return True else: if item < a[mid]: return bsearch(a[:mid],item) else: return bsearch(a[mid+1:],item) RUNNING TIME. O(log n), due to repeated halving. Hoeteck Wee CS 323 Aug 30, / 17
14 Integer square root PROBLEM. given an n-bit integer A, compute the integer square root of A. ALGORITHM. use binary search to find the square root def isqrt(a): lower, upper = 1, A while upper-lower>1: mid = (lower+upper)/2 sq = mid*mid if sq > A: upper = mid else: lower = mid if (lower*lower == n): return lower else: return -1 RUNNING TIME. O(n 3 ) Hoeteck Wee CS 323 Aug 30, / 17
15 Integer square root input input Hoeteck Wee CS 323 Aug 30, / 17
16 THE END
STA141C: Big Data & High Performance Statistical Computing
STA141C: Big Data & High Performance Statistical Computing Lecture 2: Background in Algorithms Cho-Jui Hsieh UC Davis April 5/April 10, 2017 Time Complexity Analysis Time Complexity There are always many
More informationSTA141C: Big Data & High Performance Statistical Computing
STA141C: Big Data & High Performance Statistical Computing Lecture 3: Background in Algorithms Cho-Jui Hsieh UC Davis April 13, 2017 Time Complexity Analysis Time Complexity There are always many ways
More informationSorting is a problem for which we can prove a non-trivial lower bound.
Sorting The sorting problem is defined as follows: Sorting: Given a list a with n elements possessing a total order, return a list with the same elements in non-decreasing order. Remember that total order
More information15-110: Principles of Computing, Spring 2018
15-110: Principles of Computing, Spring 2018 Problem Set 5 (PS5) Due: Friday, February 23 by 2:30PM via Gradescope Hand-in HANDIN INSTRUCTIONS Download a copy of this PDF file. You have two ways to fill
More informationReview implementation of Stable Matching Survey of common running times. Turn in completed problem sets. Jan 18, 2019 Sprenkle - CSCI211
Objectives Review implementation of Stable Matching Survey of common running times Turn in completed problem sets Jan 18, 2019 Sprenkle - CSCI211 1 Review: Asymptotic Analysis of Gale-Shapley Alg Not explicitly
More informationCSE 504: Compiler Design
http://xkcd.com/303/ Compiler Design Course Organization CSE 504 1 / 20 CSE 504: Compiler Design http://www.cs.stonybrook.edu/~cse504/ Mon., Wed. 2:30pm 3:50pm Harriman Hall 116 C. R. Ramakrishnan e-mail:
More informationECE573 Introduction to Compilers & Translators
ECE573 Introduction to Compilers & Translators Tentative Syllabus Fall 2005 Tu/Th 9:00-10:15 AM, EE 115 Instructor Prof. R. Eigenmann Tel 49-41741 Email eigenman@ecn Office EE334C Office Hours Tu 10:15-11:30
More informationCSC236 Week 6. Larry Zhang
CSC236 Week 6 Larry Zhang 1 2 Drop date: Nov 9th jk, wait until the test marks are back Tutorial this week: algorithm analysis PS5 will be out by the end of this week 3 What we have learned so far We learned
More informationTeach A level Compu/ng: Algorithms and Data Structures
Teach A level Compu/ng: Algorithms and Data Structures Eliot Williams @MrEliotWilliams Course Outline Representa+ons of data structures: Arrays, tuples, Stacks, Queues,Lists 2 Recursive Algorithms 3 Searching
More informationBOSTON UNIVERSITY Metropolitan College MET CS342 Data Structures with Java Dr. V.Shtern (Fall 2011) Course Syllabus
BOSTON UNIVERSITY Metropolitan College MET CS342 Data Structures with Java Dr. V.Shtern (Fall 2011) Course Syllabus 1. Course Objectives Welcome to MET CS342 Data Structures with Java. The intent of this
More informationSimplifying Square Root Expressions[In Class Version][Algebra 1 Honors].notebook August 26, Homework Assignment. Example 5 Example 6.
Homework Assignment The following examples have to be copied for next class Example 1 Example 2 Example 3 Example 4 Example 5 Example 6 Example 7 Example 8 Example 9 Example 10 Example 11 Example 12 The
More informationCS 3030 Scripting Languages Syllabus
General Information CS 3030 Scripting Languages Semester: Fall 2017 Textbook: Location: Instructor Info: None. We will use freely available resources from the Internet. Online Ted Cowan tedcowan@weber.edu
More informationAdvanced Algorithm Homework 4 Results and Solutions
Advanced Algorithm Homework 4 Results and Solutions ID 1 2 3 4 5 Av Ex 2554 6288 9919 10 6 10 10 9.5 8.9 10-1 4208 10 10 9 8.5 10 9.5 9 0996 10 10 10 10 10 10 10 8239 10 10 10 10 10 10 10 7388 8 8.5 9
More informationCS 1803 Pair Homework 3 Calculator Pair Fun Due: Wednesday, September 15th, before 6 PM Out of 100 points
CS 1803 Pair Homework 3 Calculator Pair Fun Due: Wednesday, September 15th, before 6 PM Out of 100 points Files to submit: 1. HW3.py This is a PAIR PROGRAMMING Assignment: Work with your partner! For pair
More informationCOMP251: Algorithms and Data Structures. Jérôme Waldispühl School of Computer Science McGill University
COMP251: Algorithms and Data Structures Jérôme Waldispühl School of Computer Science McGill University About Me Jérôme Waldispühl Associate Professor of Computer Science I am conducting research in Bioinformatics
More informationCS 61B Summer 2005 (Porter) Midterm 2 July 21, SOLUTIONS. Do not open until told to begin
CS 61B Summer 2005 (Porter) Midterm 2 July 21, 2005 - SOLUTIONS Do not open until told to begin This exam is CLOSED BOOK, but you may use 1 letter-sized page of notes that you have created. Problem 0:
More informationProfessor Hugh C. Lauer CS-1004 Introduction to Programming for Non-Majors
First Python Program Professor Hugh C. Lauer CS-1004 Introduction to Programming for Non-Majors (Slides include materials from Python Programming: An Introduction to Computer Science, 2 nd edition, by
More informationCSC 015: FUNDAMENTALS OF COMPUTER SCIENCE I
CSC 015: FUNDAMENTALS OF COMPUTER SCIENCE I Lecture 1: Class Introduction DR. BO TANG ASSISTANT PROFESSOR HOFSTRA UNIVERSITY 1 9/7/16 CSC15 - Python OUTLINE What is Computer Science? What is this Class
More informationage = 23 age = age + 1 data types Integers Floating-point numbers Strings Booleans loosely typed age = In my 20s
Intro to Python Python Getting increasingly more common Designed to have intuitive and lightweight syntax In this class, we will be using Python 3.x Python 2.x is still very popular, and the differences
More informationCSc 110, Spring 2017 Lecture 39: searching
CSc 110, Spring 2017 Lecture 39: searching 1 Sequential search sequential search: Locates a target value in a list (may not be sorted) by examining each element from start to finish. Also known as linear
More informationHomework 1. Notes. What To Turn In. Unix Accounts. Reading. Handout 3 CSCI 334: Spring, 2017
Homework 1 Due 14 February Handout 3 CSCI 334: Spring, 2017 Notes This homework has three types of problems: Self Check: You are strongly encouraged to think about and work through these questions, but
More informationCASPER COLLEGE COURSE SYLLABUS MSFT 1600 Managing Microsoft Exchange Server 2003 Semester/Year: Fall 2007
CASPER COLLEGE COURSE SYLLABUS MSFT 1600 Managing Microsoft Exchange Server 2003 Semester/Year: Fall 2007 Lecture Hours: 2 Lab Hours: 2 Credit Hours: 3 Class Time: Saturday 8:30 AM - 12:00 PM Room: BU
More informationl Determine if a number is odd or even l Determine if a number/character is in a range - 1 to 10 (inclusive) - between a and z (inclusive)
Final Exam Exercises Chapters 1-7 + 11 Write C++ code to: l Determine if a number is odd or even CS 2308 Fall 2016 Jill Seaman l Determine if a number/character is in a range - 1 to 10 (inclusive) - between
More informationIntroduction to Scientific Python, CME 193 Jan. 9, web.stanford.edu/~ermartin/teaching/cme193-winter15
1 LECTURE 1: INTRO Introduction to Scientific Python, CME 193 Jan. 9, 2014 web.stanford.edu/~ermartin/teaching/cme193-winter15 Eileen Martin Some slides are from Sven Schmit s Fall 14 slides 2 Course Details
More informationCS Lecture 19: Loop invariants
CS 1110 Lecture 19: Loop invariants Announcements Prelim 2 conflicts Today (April 2) is two weeks before the prelim, and the deadline for submitting prelim conflicts. Instructor travel This week and the
More informationProgramming Studio #1 ECE 190
Programming Studio #1 ECE 190 Programming Studio #1 Announcements In Studio Assignment Introduction to Linux Command-Line Operations Recitation Floating Point Representation Binary & Hexadecimal 2 s Complement
More informationData Structure and Algorithm II Homework #2 Due: 13pm, Monday, October 31, === Homework submission instructions ===
Data Structure and Algorithm II Homework #2 Due: 13pm, Monday, October 31, 2011 === Homework submission instructions === Submit the answers for writing problems (including your programming report) through
More informationData Structure and Algorithm Homework #1 Due: 1:20pm, Tuesday, March 21, 2017 TA === Homework submission instructions ===
Data Structure and Algorithm Homework #1 Due: 1:20pm, Tuesday, March 21, 2017 TA email: dsa1@csie.ntu.edu.tw === Homework submission instructions === For Problem 1-3, please put all your solutions in a
More informationCSE 332 Spring 2013: Midterm Exam (closed book, closed notes, no calculators)
Name: Email address: Quiz Section: CSE 332 Spring 2013: Midterm Exam (closed book, closed notes, no calculators) Instructions: Read the directions for each question carefully before answering. We will
More informationby the evening of Tuesday, Feb 6
Homework 1 Due 14 February Handout 6 CSCI 334: Spring 2018 Notes This homework has three types of problems: Self Check: You are strongly encouraged to think about and work through these questions, and
More informationArithmetic and IO. 25 August 2017
Arithmetic and IO 25 August 2017 Submissions you can submit multiple times to the homework dropbox file name: uppercase first letter, Yourlastname0829.java the system will use the last submission before
More informationTest 1 Review Questions with Solutions
CS3510 Design & Analysis of Algorithms Section A Test 1 Review Questions with Solutions Instructor: Richard Peng Test 1 in class, Wednesday, Sep 13, 2017 Main Topics Asymptotic complexity: O, Ω, and Θ.
More informationProject 1. due date Sunday July 8, 2018, 12:00 noon
Queens College, CUNY, Department of Computer Science Object-oriented programming in C++ CSCI 211 / 611 Summer 2018 Instructor: Dr. Sateesh Mane c Sateesh R. Mane 2018 Project 1 due date Sunday July 8,
More informationCS 112 Introduction to Computing II. Wayne Snyder Computer Science Department Boston University
CS 112 Introduction to Computing II Wayne Snyder Department Boston University Today: Administrivia and Motivation Administrative Matters: Review of course design and course policies Motivation: Two Algorithms
More informationECSE 321 Assignment 2
ECSE 321 Assignment 2 Instructions: This assignment is worth a total of 40 marks. The assignment is due by noon (12pm) on Friday, April 5th 2013. The preferred method of submission is to submit a written
More information3D Graphics Programming Mira Costa High School - Class Syllabus,
3D Graphics Programming Mira Costa High School - Class Syllabus, 2009-2010 INSTRUCTOR: Mr. M. Williams COURSE GOALS and OBJECTIVES: 1 Learn the fundamentals of the Java language including data types and
More informationPrinciples of Algorithm Analysis. Biostatistics 615/815
Principles of Algorithm Analysis Biostatistics 615/815 Lecture 3 Snapshot of Incoming Class 25 Programming Languages 20 15 10 5 0 R C/C++ MatLab SAS Java Other Can you describe the QuickSort Algorithm?
More informationCSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209
CSC209 Software Tools and Systems Programming https://mcs.utm.utoronto.ca/~209 What is this Course About? Software Tools Using them Building them Systems Programming Quirks of C The file system System
More informationLecture 6: Divide-and-Conquer
Lecture 6: Divide-and-Conquer COSC242: Algorithms and Data Structures Brendan McCane Department of Computer Science, University of Otago Types of Algorithms In COSC242, we will be looking at 3 general
More informationData Structure and Algorithm Homework #3 Due: 2:20pm, Tuesday, April 9, 2013 TA === Homework submission instructions ===
Data Structure and Algorithm Homework #3 Due: 2:20pm, Tuesday, April 9, 2013 TA email: dsa1@csientuedutw === Homework submission instructions === For Problem 1, submit your source code, a Makefile to compile
More informationCS/COE 1501 cs.pitt.edu/~bill/1501/ Introduction
CS/COE 1501 cs.pitt.edu/~bill/1501/ Introduction Meta-notes These notes are intended for use by students in CS1501 at the University of Pittsburgh. They are provided free of charge and may not be sold
More information! Determine if a number is odd or even. ! Determine if a number/character is in a range. - 1 to 10 (inclusive) - between a and z (inclusive)
Final Exam Exercises CS 2308 Spring 2014 Jill Seaman Chapters 1-7 + 11 Write C++ code to: Determine if a number is odd or even Determine if a number/character is in a range - 1 to 10 (inclusive) - between
More informationUNIT 5C Merge Sort Principles of Computing, Carnegie Mellon University
UNIT 5C Merge Sort 15110 Principles of Computing, Carnegie Mellon University 1 Divide and Conquer In computation: Divide the problem into simpler versions of itself. Conquer each problem using the same
More informationoverview overview who practicalities introduction data structures and algorithms lecture 1 sorting insertion sort pseudo code merge sort
overview data structures and algorithms 2017 09 04 lecture 1 overview who lectures: Femke van Raamsdonk f.van.raamsdonk at vu.nl T446 exercise classes: Paul Ursulean Petar Vukmirovic when and where tests
More informationCS 6371: Advanced Programming Languages
CS 6371: Advanced Programming Languages Dr. Kevin Hamlen Spring 2017 Fill out, sign, and return prereq forms: Course number: CS 6371 Section: 1 Prerequisites: CS 5343: Algorithm Analysis & Data Structures
More informationStructure and Interpretation of Computer Programs
CS 61A Fall 2012 Structure and Interpretation of Computer Programs Alternate Midterm 2 Solutions INSTRUCTIONS You have 2 hours to complete the exam. The exam is closed book, closed notes, closed computer,
More informationCS/COE 1501
CS/COE 1501 www.cs.pitt.edu/~nlf4/cs1501/ Introduction Meta-notes These notes are intended for use by students in CS1501 at the University of Pittsburgh. They are provided free of charge and may not be
More informationAlgorithms for Bioinformatics
582670 Algorithms for Bioinformatics Lecture 1: Primer to algorithms and molecular biology 4.9.2012 Course format Thu 12-14 Thu 10-12 Tue 12-14 Grading Exam 48 points Exercises 12 points 30% = 1 85% =
More informationCS111: PROGRAMMING LANGUAGE II
1 CS111: PROGRAMMING LANGUAGE II Computer Science Department Lecture 1: Introduction Lecture Contents 2 Course info Why programming?? Why Java?? Write once, run anywhere!! Java basics Input/output Variables
More informationAlgorithm Analysis. Spring Semester 2007 Programming and Data Structure 1
Algorithm Analysis Spring Semester 2007 Programming and Data Structure 1 What is an algorithm? A clearly specifiable set of instructions to solve a problem Given a problem decide that the algorithm is
More informationAccelerating Information Technology Innovation
Accelerating Information Technology Innovation http://aiti.mit.edu/program/philippines-summer-2012/ Philippines Summer 2012 Lecture 1 Introduction to Python June 19, 2012 Agenda About the Course What is
More informationCIS192: Python Programming
CIS192: Python Programming Introduction Harry Smith University of Pennsylvania January 18, 2017 Harry Smith (University of Pennsylvania) CIS 192 Lecture 1 January 18, 2017 1 / 34 Outline 1 Logistics Rooms
More informationCS/SE 153 Concepts of Compiler Design
San José State University Department of Computer Science CS/SE 153 Concepts of Compiler Design Section 1 Fall 2018 Course and Contact Information Instructor: Ron Mak Office Location: ENG 250 Email: ron.mak@sjsu.edu
More informationCS/ENGRD 2110 Object-Oriented Programming and Data Structures Spring 2012 Thorsten Joachims. Lecture 10: Asymptotic Complexity and
CS/ENGRD 2110 Object-Oriented Programming and Data Structures Spring 2012 Thorsten Joachims Lecture 10: Asymptotic Complexity and What Makes a Good Algorithm? Suppose you have two possible algorithms or
More informationProgramming Studio #1 ECE 190
Programming Studio #1 ECE 190 Programming Studio #1 Announcements Recitation Binary representation, hexadecimal notation floating point representation, 2 s complement In Studio Assignment Introduction
More informationUNIT 5C Merge Sort. Course Announcements
UNIT 5C Merge Sort 15110 Principles of Computing, Carnegie Mellon University 1 Course Announcements Exam information 2:30 Lecture: Sections F, G, H will go to HH B131. 3:30 Lecture: Section O will go to
More informationPart III Appendices 165
Part III Appendices 165 Appendix A Technical Instructions Learning Outcomes This material will help you learn how to use the software you need to do your work in this course. You won t be tested on it.
More informationAlgorithms for Bioinformatics
These slides are based on previous years slides of Alexandru Tomescu, Leena Salmela and Veli Mäkinen 582670 Algorithms for Bioinformatics Lecture 1: Primer to algorithms and molecular biology 2.9.2014
More informationCS/IT 114 Introduction to Java, Part 1 FALL 2016 CLASS 14: OCT. 25TH INSTRUCTOR: JIAYIN WANG
CS/IT 114 Introduction to Java, Part 1 FALL 2016 CLASS 14: OCT. 25TH INSTRUCTOR: JIAYIN WANG 1 Notice Assignments No new homework this week. Please make up the homework 1 5 & class exercises this week.
More informationUser Manual. Version 3.1. Copyright 2000 Academia Software Solutions All Rights Reserved
The GR System User Manual Version 3.1 Copyright 2000 Academia Software Solutions All Rights Reserved All contents of this manual are copyrighted by Academia Software Solutions. The information contained
More informationPython in 10 (50) minutes
Python in 10 (50) minutes https://www.stavros.io/tutorials/python/ Python for Microcontrollers Getting started with MicroPython Donald Norris, McGrawHill (2017) Python is strongly typed (i.e. types are
More informationCMPE 152 Compiler Design
San José State University Department of Computer Engineering CMPE 152 Compiler Design Section 1 (Class) Sections 2 and 3 (s) Fall 2018 Course and Contact Information Instructor: Ron Mak Office Location:
More informationCS2223: Algorithms D- Term, Homework I. Teams: To be done individually. Due date: 03/27/2015 (1:50 PM) Submission: Electronic submission only
CS2223: Algorithms D- Term, 2015 Homework I Teams: To be done individually Due date: 03/27/2015 (1:50 PM) Submission: Electronic submission only 1 General Instructions Python Code vs. Pseudocode: Each
More informationIntro to Programming. Unit 7. What is Programming? What is Programming? Intro to Programming
Intro to Programming Unit 7 Intro to Programming 1 What is Programming? 1. Programming Languages 2. Markup vs. Programming 1. Introduction 2. Print Statement 3. Strings 4. Types and Values 5. Math Externals
More informationCOS 226 Midterm Exam, Spring 2009
NAME: login ID: precept: COS 226 Midterm Exam, Spring 2009 This test is 10 questions, weighted as indicated. The exam is closed book, except that you are allowed to use a one page cheatsheet. No calculators
More informationCSE 332 Autumn 2013: Midterm Exam (closed book, closed notes, no calculators)
Name: Email address: Quiz Section: CSE 332 Autumn 2013: Midterm Exam (closed book, closed notes, no calculators) Instructions: Read the directions for each question carefully before answering. We will
More informationCS 241 Data Organization using C
CS 241 Data Organization using C Fall 2018 Instructor Name: Dr. Marie Vasek Contact: Private message me on the course Piazza page. Office: Farris 2120 Office Hours: Tuesday 2-4pm and Thursday 9:30-11am
More informationComputer Science II Data Structures
Computer Science II Data Structures Instructor Sukumar Ghosh 201P Maclean Hall Office hours: 10:30 AM 12:00 PM Mondays and Fridays Course Webpage homepage.cs.uiowa.edu/~ghosh/2116.html Course Syllabus
More informationComputer Programming
Computer Programming Dr. Deepak B Phatak Dr. Supratik Chakraborty Department of Computer Science and Engineering Session: Merge Sort in C++ and Its Analysis Dr. Deepak B. Phatak & Dr. Supratik Chakraborty,
More informationCIS192 Python Programming. Robert Rand. August 27, 2015
CIS192 Python Programming Introduction Robert Rand University of Pennsylvania August 27, 2015 Robert Rand (University of Pennsylvania) CIS 192 August 27, 2015 1 / 30 Outline 1 Logistics Grading Office
More informationCpt S 122 Data Structures. Sorting
Cpt S 122 Data Structures Sorting Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Sorting Process of re-arranging data in ascending or descending order Given
More informationCSE 332 Spring 2014: Midterm Exam (closed book, closed notes, no calculators)
Name: Email address: Quiz Section: CSE 332 Spring 2014: Midterm Exam (closed book, closed notes, no calculators) Instructions: Read the directions for each question carefully before answering. We will
More informationPace University. Fundamental Concepts of CS121 1
Pace University Fundamental Concepts of CS121 1 Dr. Lixin Tao http://csis.pace.edu/~lixin Computer Science Department Pace University October 12, 2005 This document complements my tutorial Introduction
More informationDivide & Conquer. 2. Conquer the sub-problems by solving them recursively. 1. Divide the problem into number of sub-problems
Divide & Conquer Divide & Conquer The Divide & Conquer approach breaks down the problem into multiple smaller sub-problems, solves the sub-problems recursively, then combines the solutions of the sub-problems
More informationINFSCI 1017 Implementation of Information Systems Spring 2017
INFSCI 1017 Implementation of Information Systems Spring 2017 Time: Thursdays 6:00 8:30 Location: Information Science Building, Room 406 Instructor: Alexander Nolte Office Hours: Monday, 1-2PM Thursdays,
More informationHomework 1. Reading. Problems. Handout 3 CSCI 334: Spring, 2012
Homework 1 Due 14 February Handout 3 CSCI 334: Spring, 2012 Reading 1. (Required) Mitchell, Chapter 3. 2. (As Needed) The Lisp Tutorial from the Links web page, as needed for the programming questions.
More informationIntroduction to. Algorithms. Lecture 2. Prof. Constantinos Daskalakis
6.006- Introduction to Algorithms Lecture 2 Prof. Constantinos Daskalakis Menu Problem: peak finding 1 dimension 2 dimensions Technique: Divide and conquer details about the 1 st pset in the end of the
More informationData Structures and OO Development II
CS 2606 1 Long House Ancestral Puebloan, Mesa Verde Instructor and Course Information 2 William D McQuain Email: Office: Office Hours: wmcquain@cs.vt.edu 631 McBryde Hall see course website CS 2606 Design
More informationIS 709/809: Computational Methods in IS Research. Algorithm Analysis (Sorting)
IS 709/809: Computational Methods in IS Research Algorithm Analysis (Sorting) Nirmalya Roy Department of Information Systems University of Maryland Baltimore County www.umbc.edu Sorting Problem Given an
More informationCOMP Data Structures
COMP 2140 - Data Structures Shahin Kamali Topic 1 - Introductions University of Manitoba Based on notes by S. Durocher. COMP 2140 - Data Structures 1 / 35 Introduction COMP 2140 - Data Structures 1 / 35
More informationSorting. Bringing Order to the World
Lecture 10 Sorting Bringing Order to the World Lecture Outline Iterative sorting algorithms (comparison based) Selection Sort Bubble Sort Insertion Sort Recursive sorting algorithms (comparison based)
More informationAPCS Semester #1 Final Exam Practice Problems
Name: Date: Per: AP Computer Science, Mr. Ferraro APCS Semester #1 Final Exam Practice Problems The problems here are to get you thinking about topics we ve visited thus far in preparation for the semester
More informationData Structures and Algorithms
CS 3114 Data Structures and Algorithms 1 Trinity College Library Univ. of Dublin Instructors and Course Information 2 William D McQuain Email: Office: Office Hours: wmcquain@cs.vt.edu 634 McBryde Hall
More informationSTATS 507 Data Analysis in Python. Lecture 0: Introduction and Administrivia
STATS 507 Data Analysis in Python Lecture 0: Introduction and Administrivia Data science has completely changed our world Course goals Establish a broad background in Python programming Prepare you for
More informationBiostatistics 615/815 - Lecture 2 Introduction to C++ Programming
Biostatistics 615/815 - Lecture 2 Introduction to C++ Programming Hyun Min Kang September 8th, 2011 Hyun Min Kang Biostatistics 615/815 - Lecture 2 September 8th, 2011 1 / 47 BIOSTAT615/815 - Objectives
More informationCOMP Data Structures
Shahin Kamali Topic 1 - Introductions University of Manitoba Based on notes by S. Durocher. 1 / 35 Introduction Introduction 1 / 35 Introduction In a Glance... Data structures are building blocks for designing
More informationCS 310 Advanced Data Structures and Algorithms
CS 310 Advanced Data Structures and Algorithms Sorting June 13, 2017 Tong Wang UMass Boston CS 310 June 13, 2017 1 / 42 Sorting One of the most fundamental problems in CS Input: a series of elements with
More information15-110: Principles of Computing, Spring 2018
5-: Principles of Computing, Spring 28 Problem Set 8 (PS8) Due: Friday, March 3 by 2:3PM via Gradescope Hand-in HANDIN INSTRUCTIONS Download a copy of this PDF file. You have two ways to fill in your answers:.
More informationCS Divide and Conquer
CS483-07 Divide and Conquer Instructor: Fei Li Room 443 ST II Office hours: Tue. & Thur. 1:30pm - 2:30pm or by appointments lifei@cs.gmu.edu with subject: CS483 http://www.cs.gmu.edu/ lifei/teaching/cs483_fall07/
More informationIntroduction to Computers and Programming. Today
Introduction to Computers and Programming Prof. I. K. Lundqvist Lecture 10 April 8 2004 Today How to determine Big-O Compare data structures and algorithms Sorting algorithms 2 How to determine Big-O Partition
More informationDuring the first 2 weeks of class, all students in the course will take an in-lab programming exam. This is the Exam in Programming Proficiency.
Description of CPSC 301: This is a 2-unit credit/no credit course. It is a course taught entirely in lab, and has two required 2-hour 50-minute lab sessions per week. It will review, reinforce, and expand
More informationIntroduction to Programming System Design CSCI 455x (4 Units)
Introduction to Programming System Design CSCI 455x (4 Units) Description This course covers programming in Java and C++. Topics include review of basic programming concepts such as control structures,
More informationWelcome to CSL 201 Data Structures
Welcome to CSL 201 Data Structures Narayanan (CK) C Krishnan Department of Computer Science and Engineering IIT Ropar Administrative Trivia Course Structure n 3-0-4 (5 credits) Class Timings n Monday 9.55-10.45
More informationCSC Software I: Utilities and Internals. Programming in Python
CSC 271 - Software I: Utilities and Internals Lecture #8 An Introduction to Python Programming in Python Python is a general purpose interpreted language. There are two main versions of Python; Python
More informationW4231: Analysis of Algorithms
W4231: Analysis of Algorithms 10/5/1999 (revised 10/6/1999) More hashing Binomial heaps Lectures Next Week No Lecture Tues. October 12 and Thurs. October 14. Extra lecture (2 1 2 hours) on Mon. October
More informationCSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209
CSC209 Software Tools and Systems Programming https://mcs.utm.utoronto.ca/~209 What is this Course About? Software Tools Using them Building them Systems Programming Quirks of C The file system System
More informationProgramming Standards: You must conform to good programming/documentation standards. Some specifics:
CS3114 (Spring 2011) PROGRAMMING ASSIGNMENT #3 Due Thursday, April 7 @ 11:00 PM for 100 points Early bonus date: Wednesday, April 6 @ 11:00 PM for a 10 point bonus Initial Schedule due Thursday, March
More informationCS 337 Project 1: Minimum-Weight Binary Search Trees
CS 337 Project 1: Minimum-Weight Binary Search Trees September 6, 2006 1 Preliminaries Let X denote a set of keys drawn from some totally ordered universe U, such as the set of all integers, or the set
More informationWELCOME! (download slides and.py files and follow along!) LECTURE 1
WELCOME! (download slides and.py files and follow along!) 6.0001 LECTURE 1 6.0001 LECTURE 1 1 TODAY course info what is computation python basics mathematical operations python variables and types NOTE:
More informationINF 315E Introduction to Databases School of Information Fall 2015
INF 315E Introduction to Databases School of Information Fall 2015 Class Hours: Tuesday & Thursday10:30 am-12:00 pm Instructor: Eunyoung Moon Email: eymoon@utexas.edu Course Description Almost every website
More information