IIT Bombay Data Structures and Algorithms Prof Ajit

IIT Bombay Data Structures and Algorithms Prof. Ajit A. Diwan Prof. Ganesh Ramakrishnan Prof. Deepak B. Phatak Department of Computer Science and Engineering IIT Bombay Session: Media Player Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 1

Media Player IIT Bombay Playlist Kya hua tera waada Mera joota hai japaani Aao huzoor tumko Gore rang pe na itna Kabhi khushi kabhi gham … … 1 st Previous Play/ Pause Next Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Last Reverse T Sort D Sort 2

Details of Playlist IIT Bombay ID Title Singer Duration 1 Kabhi khushi kabhi gham Lata Mangeshkar 4. 1 2 Kya hua tera waada Mohd. Rafi 4. 8 … … Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 3

Operations: Media Player IIT Bombay 1) Add a song at any position to the playlist 2) Remove a song from any position from the playlist 3) Go to a particular song a) Select from playlist b) Click buttons (1 st, previous, next, and last) 4) Reverse the list of songs in the playlist 5) Sort the list of songs in the playlist based on (a) Title (b) Duration Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 4

Example (Initial State) IIT Bombay Playlist Position 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort D Sort 5

Example (Adding Songs to Playlist) IIT Bombay Playlist Mera joota hai japaani Iterator ‘it’ Inserting song at Position: 0 Note: Position of Iterator ‘it’ is the original position 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort D Sort 6

Example (Adding Songs to Playlist) IIT Bombay Playlist Mera joota hai japaani Gore rang pe na itna Iterator ‘it’ Inserting song at Position: 1 Note: Position of Iterator ‘it’ is the original position 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort D Sort 7

Example (Adding Songs to Playlist) IIT Bombay Playlist Kya hua tera waada Mera joota hai japaani Gore rang pe na itna Iterator ‘it’ Inserting song at Position: 0 Note: Position of Iterator ‘it’ is the original position 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort D Sort 8

Example (Adding Songs to Playlist) IIT Bombay Playlist Kya hua tera waada Mera joota hai japaani Gore rang pe na itna Kabhi khushi kabhi gham Iterator ‘it’ Inserting song at Position: 53 Note: Position of Iterator ‘it’ is the original position 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort D Sort Since position is greater than the songs in the list, the song is inserted at the end 9

Example (Adding Songs to Playlist) IIT Bombay Playlist Kya hua tera waada Mera joota hai japaani Aao huzoor tumko Gore rang pe na itna Kabhi khushi kabhi gham Iterator ‘it’ Inserting song at Position: 2 Note: Position of Iterator ‘it’ is the original position 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort D Sort 10

Example (Moving to Last Song) IIT Bombay Playlist Kya hua tera waada Mera joota hai japaani Aao huzoor tumko Gore rang pe na itna Kabhi khushi kabhi gham 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort Iterator ‘it’ D Sort 11

Example (Moving to Previous Song) IIT Bombay Playlist Kya hua tera waada Mera joota hai japaani Aao huzoor tumko Gore rang pe na itna Kabhi khushi kabhi gham 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort Iterator ‘it’ D Sort 12

Example (Moving to First Song) IIT Bombay Playlist Kya hua tera waada Mera joota hai japaani Aao huzoor tumko Gore rang pe na itna Kabhi khushi kabhi gham 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort Iterator ‘it’ D Sort 13

Example (Moving to Next Song) IIT Bombay Playlist Kya hua tera waada Mera joota hai japaani Aao huzoor tumko Gore rang pe na itna Kabhi khushi kabhi gham 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort Iterator ‘it’ D Sort 14

Example (Moving Directly to a Song in playlist) IIT Bombay Playlist Kya hua tera waada Mera joota hai japaani Aao huzoor tumko Gore rang pe na itna Kabhi khushi kabhi gham Iterator ‘it’ Moving directly to song ‘Gore rang pe na itna’ 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort D Sort 15

Example (Reversing List of Songs) IIT Bombay Playlist Kabhi khushi kabhi gham Gore rang pe na itna Aao huzoor tumko Mera joota hai japaani Kya hua tera waada 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort D Sort 16

Example (Sort List of Songs by Title) IIT Bombay Playlist Aao huzoor tumko Gore rang pe na itna Kabhi khushi kabhi gham Kya hua tera waada Mera joota hai japaani 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort D Sort 17

Example (Sort List of Songs by Duration) IIT Bombay Playlist Aao huzoor tumko Kabhi khushi kabhi gham Mera joota hai japaani Gore rang pe na itna Kya hua tera waada 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort D Sort 18

Example (Remove song from playlist) IIT Bombay Playlist Aao huzoor tumko Kabhi khushi kabhi gham Mera joota hai japaani Gore rang pe na itna Kya hua tera waada 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort D Sort 19

Example (Remove song from playlist) IIT Bombay Playlist Aao huzoor tumko Kabhi khushi kabhi gham Mera joota hai japaani Kya hua tera waada 1 st Previous Play/ Pause Next Last Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay Reverse T Sort D Sort 20

IIT Bombay Thank you Ajit A. Diwan, Ganesh Ramakrishnan, and Deepak B. Phatak, IIT Bombay 21
- Slides: 21