Intro to Computer Science CS1510 Dr. Sarah Diesburg

Slides:



Advertisements
Similar presentations
Lesson 1.3 Unit 1, Lesson 3. Set:A collection of distinct objects Elements:All of the objects that make up a set.
Advertisements

Python Data Structures CMSC 201. Built in Types Today we will be talking about some other built in types in python! Tuples Sets Dictionaries.
CHAPTER 3 COLLECTIONS SET Collection. 2 Abstract Data Types A data type consists of a set of values or elements, called its domain, and a set of operators.
CS-2851 Dr. Mark L. Hornick 1 Tree Maps and Tree Sets The JCF Binary Tree classes.
CS355 - Theory of Computation Lecture 2: Mathematical Preliminaries.
Beyond Lists: Other Data Structures CS303E: Elements of Computers and Programming.
Copyright © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley C H A P T E R 9 Dictionaries and Sets.
Chapter 9 Dictionaries and Sets.
Introduction to Strings Intro to Computer Science CS1510, Section 2 Dr. Sarah Diesburg 1.
Tuples and Dictionaries Intro to Computer Science CS1510, Section 2 Dr. Sarah Diesburg.
Collections Michael Ernst CSE 190p University of Washington.
Basic Definitions of Set Theory Lecture 24 Section 5.1 Fri, Mar 2, 2007.
14. DICTIONARIES AND SETS Rocky K. C. Chang 17 November 2014 (Based on from Charles Dierbach, Introduction to Computer Science Using Python and Punch and.
Repetition Intro to Computer Science CS1510 Dr. Sarah Diesburg.
Sets Intro to Computer Science CS1510, Section 2 Dr. Sarah Diesburg.
Dictionaries Intro to Computer Science CS 1510 Dr. Sarah Diesburg.
CompSci 101 Introduction to Computer Science Feb 24, 2015 Prof. Rodger.
Introduction to Files Intro to Computer Science CS1510, Section 2 Dr. Sarah Diesburg 1.
String and Lists Dr. José M. Reyes Álamo. 2 Outline What is a string String operations Traversing strings String slices What is a list Traversing a list.
Types, Truth, and Expressions Intro to Computer Science CS1510, Section 2 Dr. Sarah Diesburg.
Types, Truth, and Expressions Intro to Computer Science CS1510, Section 2 Dr. Sarah Diesburg.
CompSci 101 Introduction to Computer Science March 1, 2016 Prof. Rodger.
String and Lists Dr. José M. Reyes Álamo.
Sets Set is an unordered list of items
Topics Dictionaries Sets Serializing Objects. Topics Dictionaries Sets Serializing Objects.
Queues Queues Queues.
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Ruth Anderson CSE 140 University of Washington
Chapter 8 Namespaces and Memory Realities
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Introduction to Strings
Intro to Computer Science CS 1510 Dr. Sarah Diesburg
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Intro to Computer Science CS 1510 Dr. Sarah Diesburg
Types, Truth, and Expressions (Part 2)
Operations with Sets A = { 1, 2, 3 ,4, 5} B = { 2, 4, 6, 8, 10}
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Types, Truth, and Expressions (Part 2)
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Types, Truth, and Expressions (Part 2)
Chapter 8 Namespaces and Memory Realities
Intro to Computer Science CS1510 Dr. Sarah Diesburg
String and Lists Dr. José M. Reyes Álamo.
Ruth Anderson UW CSE 160 Winter 2017
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Topics Dictionaries Sets Serializing Objects. Topics Dictionaries Sets Serializing Objects.
Michael Ernst CSE 140 University of Washington
Types, Truth, and Expressions (Part 2)
6. Dictionaries and sets Rocky K. C. Chang 18 October 2018
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Ruth Anderson CSE 160 University of Washington
Chapter 8 Namespaces and Memory Realities
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Introduction to Strings
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Ruth Anderson UW CSE 160 Spring 2018
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Types, Truth, and Expressions
CSE 231 Lab 9.
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Introduction to Strings
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Types, Truth, and Expressions
Ruth Anderson UW CSE 160 Winter 2016
Presentation transcript:

Intro to Computer Science CS1510 Dr. Sarah Diesburg Sets Intro to Computer Science CS1510 Dr. Sarah Diesburg

Sets, as in Mathematical Sets In mathematics, a set is a collection of objects, potentially of many different types. In a set, no two elements are identical. That is, a set consists of elements each of which is unique compared to the other elements. There is no order to the elements of a set A set with no elements is the empty set

Creating a Set mySet = set(“abcd”) The “set” keyword creates a set. The single argument that follows must be iterable, that is, something that can be walked through one item at a time with a for. The result is a set data structure: print(mySet) {'a', 'c', 'b', 'd'}

Diverse Elements A set can consist of a mixture of different types of elements: mySet = {‘a’,1,3.14159,True} As long as the single argument can be iterated through, you can make a set of it.

No Duplicates Duplicates are automatically removed. mySet = set(“aabbccdd”) print(mySet) {'a', 'c', 'b', 'd‘}

Common Operators Most data structures respond to these: len(mySet) the number of elements in a set element in mySet boolean indicating whether element is in the set for element in mySet: iterate through the elements in mySet

Set Operators The set data structure provides some special operators that correspond to the operators you learned in middle school. These are various combinations of set contents.

a b c d e f Set Ops, Union mySet=set(“abcd”); newSet=set(“cdef”) mySet.union(newSet) mySet | newSet returns {‘a’,’b’,‘c’,’d’,’e’,’f’}

Set Ops, Intersection mySet=set(“abcd”); newSet=set(“cdef”) a b c d mySet.intersection(newSet) mySet & newSet returns {‘c’,’d’}

a b c d Set Ops, Difference mySet=set(“abcd”); newSet=set(“cdef”) e f mySet.difference(newSet) mySet – newSet returns {‘a’,’b’}

Set Ops, symmetricDifference mySet=set(“abcd”); newSet=set(“cdef”) a b c d e f mySet.symmetric_difference(newSet) mySet ^ newSet returns {‘a’,’b’,’e’,’f’}

Set Ops, super and sub set mySet=set(“abc”); newSet=set(“abcdef”) a b c d e f mySet.issubset(newSet) mySet <= newSet returns True

Set Ops, super and sub set mySet=set(“abc”); newSet=set(“abcdef”) a b c d e f newSet.issuperset(mySet) newSet>= mySet returns True

Other Set Ops mySet.add(“g”) mSet.clear() Adds to the set, no effect if item is in set already. mSet.clear() Empties the set. mySet.remove(“g”) versus mySet.discard(“g”) remove throws an error if “g” isn’t there. discard doesn’t care. Both remove “g” from the set. mySet.copy() Returns a shallow copy of mySet.

A Useful Example Common/Unique Words