Implement two out of three of the basic sorting algorithms - Bubble Sort, Selection Sort, and Insertion Sort - in a generic List.

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

Implement two out of three of the basic sorting algorithms - Bubble Sort, Selection Sort, and Insertion Sort - in a generic List.

Initial code to be completed:

#include <iostream>
#include "linkedlist.h"

void bubbleSort(List*);
void selectionSort(List*);
void insertionSort(List*);

/**
 * This activity is focused on using Arrays and Linked Lists as two different
 * implementations of List. It follows that you are only to use the methods of
 * List and not of the specific array or linkedlist.
 */
int main(void) {
    // WARNING! Do not modify main method!
    // Doing so will nullify your score for this activity.
    char li;
    cin >> li;
    
    List* list;
    if (li == 'A') {
      list = new ArrayList();
    } else {
      list = new LinkedList();
    }
    
    int length;
    cin >> length;
    
    int input;
    for (int i = 0; i < length; i++) {
      cin >> input;
      list->add(input);
    }
    
    char sym;
    cin >> sym;
      
    int arg1;
    switch (sym) {
      case 'B':
        bubbleSort(list);
        break;
      case 'I':
        insertionSort(list);
        break;
      case 'S':
        selectionSort(list);
        break;
    }
    return 0;
};


//Perform two of three sorting algorithms here.
//Reminder: Do not use methods specific to Array or Linked List.
void bubbleSort(List* list) {
  
};

void selectionSort(List* list) {
  
};

void insertionSort(List* list) {
  
};

Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY