Ask Question, Ask an Expert


Ask C/C++ Expert

Home >> C/C++

The bubble sort isalso known as the ripple sort. One implementation of this sorting technique is to recurrently move the largest element to the largest index position of the array. Suppose  we have an array with the following values: 8, 3,5, 7, and 2. We begin from the left, comparing two numbers at a time and swapping if the left number is bigger than the one on the right, till we reach the end of the array. One pass will put the largest number in the rightmost spot. We start again from the left repeating the above procedure. You will note that we can now stop one before the rightmost digit (Why?). You will need 4 such passes in this ex as shown below.

    8 3 5 7 2
        Use all 5 elements:
        8> 3, so swap: 3 8 5 7 2
        8> 5, so swap: 3 5 87 2
        8>7, so swap: 3 5 78 2
        8> 2, so swap: 3 5 7 2 8
    3 5 7 2 [8]
        Now use first 4 elements:
        3 not > 5, no swap
        5 not >7, no swap
        7> 2, so swap: 3 5 2 7 [8]
    3 5 2 [78]
        3 elements:
        3 not > 5, no swap
        5 > 2, so swap: 3 2 5 [78]
    3 2 [5 78]
        2 elements:
        3 > 2, so swap: 2 3 [5 78]
    2 [3 5 78]
        1 element:
        nothing to do
    [2 3 5 78]

This is how we use Bubble sort/ ripple sort. The keyword 'bubble' in bubble sort usually refers to elements beingaerated to the top of the array, in this case the large elements are rippled to the right!

Specific Instructions

prepare a program that uses the above outlined bubblesort/ripplesort to sortdata of size n. Your program will be reading the values of n from a file. The first number in the data set will indicate the size of the data set.You will be using a two dimensional dynamic array to store the stepwise results of the sort. The starting dimensions of the array will be n by n. When needed, the array should be resized to grow and a message ‘Array Resized’ should be sent to the screen. Your program should consist of at least two modules. One module will implement a class to represent Sorter. Following good object oriented programming practices, keep the data members private. If needed, accessor functions should be declared to set and get the private data. A Sorter object should be able to populate and process itself! prepare a test program that illustrates the use of your Sorter class and displays the output for the given input file.

File input/output and operator overloading have to be attempted.So input should be read from a file using overloaded input operator and output should go both to the screen and file (overloading output operator is optional).

Include all the source code (well documented) and input/output files/screenshots.

Input File:

4  72  6  5

5   46  78  1

12   22   33    19   45   30   5
0    14    5     34   90   11

Sample Output (beginning part):

n = 4
7  2  6  5
2  6  5  7
2  5  6  7
2  5  6  7

n = 5
Array Resized

C/C++, Programming

  • Category:- C/C++
  • Reference No.:- M9640

Have any Question? 

Related Questions in C/C++

Discussionobject-oriented design please respond to the

Discussion "Object-Oriented Design" Please respond to the following: • Suppose you were required to write a C++ program that captures and stores data about automobiles that a small dealership in your city sells. Consider ...

Write a c program that calculates and prints the average of

Write a C program that calculates and prints the average of two or more salaries entered by the user. The program should first prompt the user to enter the number of salaries to process (make sure: at least 2 salaries mu ...

A compiler that translates a high-level language into

A compiler that translates a high-level language into another high-level language is called a source-to-source translator. What advantages are there to using C as a target language for a compiler?

Computer sciencewhere do you think c and coding games in c

Computer Science Where do you think C++ and coding games in C++ is headed in the next five years? How about in the next 10 years? Do you think there are any significant improvements that need to be made to the code to en ...

Transaction processing system tpsxyz electronics is one of

Transaction Processing System (TPS) XYZ Electronics is one of the most popular electronics companies In Sultanate of Oman the company offers affordable electronic gadgets such as mp3 players, portable movie players, mobi ...

Object-oriented programming assignmentintroduction -nbspa

Object-Oriented Programming Assignment Introduction -  "A logical matrix or (0, 1) matrix is a matrix with entries from the Boolean domain B = {0, 1}. Such a matrix can be used to represent a binary relation between a pa ...

Assignmentoverviewthis assignment consists of implementing

Assignment Overview This assignment consists of implementing an application using the techniques learned in the first half of the course. Examples on how to use file operations, random number generation, the standard tem ...

Programming assignment 5write a c program that allows the

PROGRAMMING ASSIGNMENT #5 Write a C program that allows the user to make some banking transactions. The program should first prompt the user to enter the current balance of his/her bank account (in dollars and cents, not ...

Discussionkeyboard versus file input please respond to the

Discussion "Keyboard versus File Input" Please respond to the following: • Suppose you are designing a C++ application that needs to capture user input specifically via a keyboard or from a file. Determine the method tha ...

Discussionwhile loops versus for loops please respond to

Discussion "While Loops versus For Loops" Please respond to the following: • Suppose you are writing a C++ program that plays a commercial video continuously within a kiosk at your favorite shopping mall within your home ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Section onea in an atwood machine suppose two objects of

SECTION ONE (a) In an Atwood Machine, suppose two objects of unequal mass are hung vertically over a frictionless

Part 1you work in hr for a company that operates a factory

Part 1: You work in HR for a company that operates a factory manufacturing fiberglass. There are several hundred empl

Details on advanced accounting paperthis paper is intended

DETAILS ON ADVANCED ACCOUNTING PAPER This paper is intended for students to apply the theoretical knowledge around ac

Create a provider database and related reports and queries

Create a provider database and related reports and queries to capture contact information for potential PC component pro

Describe what you learned about the impact of economic

Describe what you learned about the impact of economic, social, and demographic trends affecting the US labor environmen