IIT Bombay
Data Structures and Algorithms
Prof. Ajit A. DiwanProf. Ganesh RamakrishnanProf. Deepak B. PhatakDepartment of Computer Science and EngineeringIIT Bombay
Session: Media Player
1Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay
IIT Bombay
Media Player
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 2
Playlist
Kya hua tera waadaMera joota hai japaaniAao huzoor tumkoGore rang pe na itnaKabhi khushi kabhi gham……
1st Previous Play/Pause
Next Last
Reverse
T DSort Sort
IIT Bombay
Details of Playlist
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 3
ID Title Singer Duration
1 Kabhi khushi kabhi gham
Lata Mangeshkar
4.1
2 Kya hua tera waada Mohd. Raf 4.8
… … … …
IIT Bombay
Operations: Media Player
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 4
1)Add a song at any position to the playlist2)Remove a song from any position from the playlist3)Go to a particular song
a)Select from playlistb)Click buttons (1st, previous, next, and last)
4)Reverse the list of songs in the playlist5)Sort the list of songs in the playlist based on (a) Title (b) Duration
IIT Bombay
Example (Initial State)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 5
Playlist
1st Previous Play/Pause
Next Last
Position
Reverse
T DSort Sort
IIT Bombay
Example (Adding Songs to Playlist)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 6
Playlist
1st Previous Play/Pause
Next Last
Iterator ‘it’Mera joota hai japaani
Inserting song at Position: 0
Note: Position ofIterator ‘it’ is theoriginal position
Reverse
T DSort Sort
IIT Bombay
Example (Adding Songs to Playlist)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 7
Playlist
1st Previous Play/Pause
Next Last
Iterator ‘it’Mera joota hai japaani
Gore rang pe na itna
Inserting song at Position: 1
Note: Position ofIterator ‘it’ is theoriginal position
Reverse
T DSort Sort
IIT Bombay
Example (Adding Songs to Playlist)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 8
Playlist
1st Previous Play/Pause
Next Last
Iterator ‘it’Kya hua tera waada
Mera joota hai japaaniGore rang pe na itna Inserting song at
Position: 0
Note: Position ofIterator ‘it’ is theoriginal position
Reverse
T DSort Sort
IIT Bombay
Example (Adding Songs to Playlist)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 9
Playlist
1st Previous Play/Pause
Next Last
Iterator ‘it’Kya hua tera waada
Mera joota hai japaaniGore rang pe na itnaKabhi khushi kabhi gham
Inserting song at Position: 53
Note: Position ofIterator ‘it’ is theoriginal position
Since position is greater than the songs in the list, the song is inserted at the end
Reverse
T DSort Sort
IIT Bombay
Example (Adding Songs to Playlist)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 10
Playlist
1st Previous Play/Pause
Next Last
Iterator ‘it’Kya hua tera waada
Mera joota hai japaaniAao huzoor tumkoGore rang pe na itnaKabhi khushi kabhi gham
Inserting song at Position: 2
Note: Position ofIterator ‘it’ is theoriginal position
Reverse
T DSort Sort
IIT Bombay
Example (Moving to Last Song)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 11
Playlist
1st Previous Play/Pause
Next Last
Iterator ‘it’
Kya hua tera waadaMera joota hai japaaniAao huzoor tumkoGore rang pe na itnaKabhi khushi kabhi gham
Reverse
T DSort Sort
IIT Bombay
Example (Moving to Previous Song)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 12
Playlist
1st Previous Play/Pause
Next Last
Iterator ‘it’
Kya hua tera waadaMera joota hai japaaniAao huzoor tumkoGore rang pe na itnaKabhi khushi kabhi gham
Reverse
T DSort Sort
IIT Bombay
Example (Moving to First Song)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 13
Playlist
1st Previous Play/Pause
Next Last
Iterator ‘it’Kya hua tera waada
Mera joota hai japaaniAao huzoor tumkoGore rang pe na itnaKabhi khushi kabhi gham
Reverse
T DSort Sort
IIT Bombay
Example (Moving to Next Song)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 14
Playlist
1st Previous Play/Pause
Next Last
Iterator ‘it’
Kya hua tera waadaMera joota hai japaaniAao huzoor tumkoGore rang pe na itnaKabhi khushi kabhi gham
Reverse
T DSort Sort
IIT Bombay
Example (Moving Directly to a Song in playlist)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 15
Playlist
1st Previous Play/Pause
Next Last
Iterator ‘it’
Kya hua tera waadaMera joota hai japaaniAao huzoor tumkoGore rang pe na itnaKabhi khushi kabhi gham
Moving directly to song‘Gore rang pe na itna’
Reverse
T DSort Sort
IIT Bombay
Example (Reversing List of Songs)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 16
Playlist
1st Previous Play/Pause
Next Last
Kabhi khushi kabhi gham Gore rang pe na itnaAao huzoor tumkoMera joota hai japaaniKya hua tera waada
Reverse
T DSort Sort
IIT Bombay
Example (Sort List of Songs by Title)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 17
Playlist
1st Previous Play/Pause
Next Last
Aao huzoor tumkoGore rang pe na itnaKabhi khushi kabhi gham Kya hua tera waadaMera joota hai japaani
Reverse
T DSort Sort
IIT Bombay
Example (Sort List of Songs by Duration)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 18
Playlist
1st Previous Play/Pause
Next Last
Aao huzoor tumkoKabhi khushi kabhi gham Mera joota hai japaaniGore rang pe na itnaKya hua tera waada
Reverse
T DSort Sort
IIT Bombay
Example (Remove song from playlist)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 19
Playlist
1st Previous Play/Pause
Next Last
Aao huzoor tumkoKabhi khushi kabhi gham Mera joota hai japaaniGore rang pe na itnaKya hua tera waada
Reverse
T DSort Sort
IIT Bombay
Example (Remove song from playlist)
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 20
Playlist
1st Previous Play/Pause
Next Last
Aao huzoor tumkoKabhi khushi kabhi gham Mera joota hai japaaniKya hua tera waada
Reverse
T DSort Sort
IIT Bombay
Thank you
Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 21