Paper Format IEEE

© All Rights Reserved

8 views

Paper Format IEEE

© All Rights Reserved

- Computer Project for Class 12
- The Essential R Reference. Preview Sample
- 11 Sorting
- R Programming Tutorial
- 210CT Revision Notes
- CDSLAB
- Array
- Selection Sort
- ch10
- Program to Sort an Element Using Merge Sort
- SHELL SORT
- Advanced Data Structures Lab Manual
- Jan p3
- Data Structure Algorithms
- Arrays
- 9
- 4-2-Sorting.pdf
- wipro1
- Junaid (Quick Sort)
- sort-que

You are on page 1of 7

Dimensional Array

Authors Name/s per 1st Affiliation (Author)

Dept. name of organization (Line 1 of Affiliation - optional)

Name of organization - acronyms acceptable (line 2)

City, Country (line 3)

name@xyz.com optional (line 4)

AbstractThe main idea of Optimized Selection Sort

Algorithm (OSSA) is based on the already existing selection sort

algorithm, with a difference that old selection sort; sorts one

element either smallest or largest in a single iteration while

optimized selection sort, sorts both the elements at the same time

i.e smallest and largest in a single iteration. In this study we have

developed a variation of OSSA for two-dimensional array and

called it Optimized Selection Sort Algorithms for TwoDimensional arrays OSSA2D. The hypothetical and experimental

analysis revealed that the implementation of the proposed

algorithm is easy. The comparison shows that the performance of

OSSA2D is better than OSSA by four times and when compared

with old Selection Sort algorithm the performance is improved

by eight times (i.e if OSSA can sort an array in 100 seconds,

OSSA2D can sort it in 24.55 Seconds, and similarly if Selection

Sort takes 100 Seconds then OSSA2D take only 12.22 Seconds).

This performance is remarkable when the array size is very

large. The experiential results also demonstrate that the proposed

algorithm has much lower computational complexity than the

one dimensional sorting algorithm when the array size is very

large.

Index Terms Algorithm analysis, Sorting algorithms, Two

Dimensional Arrays, Computational Complexity.

I. INTRODUCTION

All Sorting and Searching are the tasks that are repeatedly

encountered in various computer applications. Since they

reveal basic tasks that must be deal with quite frequently,

researchers have tried in the past to develop algorithms

efficient in terms of least memory requirement and least time

requirement. Searching together with sorting is perhaps the

most common operation used in Computing. It was always a

matter of great attraction for the researchers that to reduce the

time a computer takes in sorting and searching data [1][2].

That's why, the researcher tried to develop speedy, wellorganized and economical algorithms for sorting and ordering

lists and arrays. This was one of the fundamental fields of

research in computing for decades. The development of

optimized sorting algorithms will leads to efficient computing

as whole. It is observed that, the time to complete the task for

most sorting algorithms depends on the amount of data.

Consequently to analyze an algorithm, it is required to find a

Dept. name of organization (Line 1 of Affiliation - optional)

Name of organization - acronyms acceptable (line 2)

City, Country (line 3)

name@xyz.com optional (line 4)

relationship showing how the time needed for the algorithm

depends on the amount of data. It is observed that, for an

algorithm, when the amount of data is doubled, the time

needed is also doubled. Similarly from the analysis of another

algorithm it was cleared that when the amount of data is

increased the time to complete the task of sorting is increased

by a factor of four.

It is also a matter of great concern that, the nature of the

data also has an effect on the efficiency of the algorithm. A

sorting algorithm may behave differently if the original data

set is almost sorted rather than if it is random or it may be in

the reverse order.

The creation of spatial data structures that are important in

computer graphics and geographic information systems is

necessarily a sorting procedure. A well-organized sort routine

is also a useful unit in implementing algorithms like sparse

matrix multiplication and parallel programming patterns like

Map Reduce [3][ 4].

The idea of optimized selection is based on the old

selection sort [5]. Unlike the old selection sort which sort data

item one at a time, the optimized selection sort algorithm

(OSSA) sort two data elements (smallest as well largest) in a

single iteration. It reduced the execution time of the selection

sort by almost fifty percent, although this algorithm also has a

time complexity of O(n2 ) [5].

Enormous data in many fields is normally represented by

the use of Matrices. It is felt by the computer professional to

have efficient sorting algorithms for sorting the twodimensional arrays. There is plenty of algorithms which

mainly focuses on one-dimensional array sorting, but a few

algorithms have been proposed for two-dimensional array

sorting [6][7]. In [7], the result is extended from onedimensional array to two-dimensional by the use of

mn

complexity of ( 2).

O

STEP 1:

dimensional array by most of the earlier sorting algorithms to

sort these m n elements [8]. Simple selection sorting is

the widely sorting algorithm used due to its simplicity and less

implementation complexity. Although it has a time complexity

mn

of

( 2 ) [9] on sorting one dimensional array with

O

elements as

comparison

m n

( n1 ) nm/2

operations are required. The time required for sorting large

arrays (e.g. arrays with 1000000*1000000 elements) is

practically much time consuming.

In this article, we propose an optimized sort algorithm for

two dimensional arrays, to solve the above mentioned problem

of sorting. The hypothetical and experimental results proved

that this proposed algorithm has a high efficiency level.

The organization of the paper is as follows. The algorithm

is proposed in Section 2. In Section 3 We analyze the proposed

algorithm. In Section 4 we present the approach to sorting

one-dimensional arrays by the proposed algorithm. Section 5

presents Experimental results. Section 6 contained conclusion.

II. PROPOSED OPTIMIZED SELECTION SORT ALGORITHM FOR

TWO DIMENSIONAL ARRAYS

existing selection sort algorithm, with a difference that

selection sort, sorts one element either smallest or largest in a

single iteration while optimized selection sort, sorts the two

elements at a time i.e smallest and largest in a single iteration.

We have developed a variation of the already existing

selection sort for two-dimensional array and called it

Optimized Selection Sort Algorithms for Two-Dimensional

array.

We have a matrix in the form of

follows

AR 11 AR 12 AR 1 n

AR = AR 21 AR 22 AR 2 n

AR m 1 AR m 2 AR mn

algorithm for two-dimensional array is depicted in the

following steps:

AR ( M , N )

as

will create a new array Y (M , N ) which will store sorted

STEP2:

the Optimized Selection Sorting Algorithm

(Let assume that the elements are sorted in

descending order in each row).

Initialize the index values of the target array

i.e Y such that

STEP3:

column and placed it into

successor the largest will

Y (row , col) the

now be the first

element of the row.

STEP4:

Update the index values for row , col

col=col +1

If col>n thencol=1, row=row +1

STEP5:

STEP6:

Exit.

EXIT.

III. ANALYSIS OF OSSA2D

major cost is on the comparisons of the data items to be

sorted. Therefore we analyzed the time complexity of by

computing the number of comparison which is performed. As

we know for sorting one dimension array the number of

comparison required by the selection sort is n( n1)/2

but we have introduced the OSSA which performs less

number of comparisons and it becomes n( n1)/4 [1].

Let assume that there are m rows in a two-dimensional

array. So

nm(n1)/4 times comparison will be

required to sort all the rows of the array.

Now after sorting each row of the array in descending order

by the above mechanism we will now search the maximum

element in the first column. For this purpose the number of

comparison needed is (m1) and there are m rows

and n columns. So for all the comparison in the array it

needs mn(m1) . After finding the element in the first

column it will be transferred to the target array Y .

Therefore the total number of comparison needed for the

two-dimensional array to be sorted using OSSA for two

dimensional array will be:

nm ( n1 )

f ( m , n )=

+ nm ( m1 ) (SEQ equation MERGEFO

4

4

constant and lower terms will be:

O ( mn2 +nm2 )

In [6] the efficiency of old selection sort algorithm for onedimensional array having the same number of elements as that

with the two-dimensional array is found as follows.

For one dimensional array the number of comparison

needed by selection sort;

(1)/2

(1)

as that of one-dimensional array the number of comparisons

are;

nm ( n1 )

+nm ( m1 )

2

(1)

sorting algorithms in [9] is;

mn/2( mn1)

mn(n1)

+ ( m1 ) mn

2

mn1

n+ 2 m3

mn

n+m

Now calculating the efficiency of optimized selection sort

algorithm for two-dimensional array, against the efficiency of

optimized selection sort for one dimension array;

nm(n1)/4

mn (n1)

+ ( m1 ) mn

4

( mn1)

n+ 4 m5

mn

n+4 m

for two-dimensional array against old selection sort for the

same number of data items;

nm(n1)/2

mn(n1)

+ ( m1 ) mn

4

2(mn1)

n+ 4 m5

2mn

n+4 m

Similarly calculating the efficiency of optimized selection

sort of two-dimensional against the efficient selection sort for

two-dimensional array; from equation and we have

mn (n1)

+ ( m1 ) mn

2

mn (n1)

+ ( m1 ) mn

4

2(n+2 m3)

n+ 4 m5

2( n+2 m)

(SEQ equationMERGEFORMAT 7)

n+ 4 m

Now consider if we have the values of n=10000

the value of m=10000

After putting the values in equation (5) and we

2mn

n+4 m

and

2(108)

10 4 +4 (10 4)

400

The above result shows that our algorithm is 400 times

efficient than the ordinary selection sort for one dimensional

array having same amount of data.

if we put the values in the equation (7)

2(n+2 m)

n+ 4 m

1.2

2(10 4 +2 ( 104 ) )

(10 4+ 4 ( 10 4 ) )

efficient than the already existing algorithm for twodimensional array having same amount of data.

IV. CONVERSION OF SINGLE DIMENSIONAL ARRAY TO TWO

DIMENSIONAL ARRAY

It has been observed in the previous section that the sorting

of two-dimensional array is far more efficient than the onedimensional array for the same number of elements. In this

section we have tried to convert a one-dimensional array with

constant elements K to a two-dimensional array having

(m n) data elements. According to equation (5) we

have

4 ( ( 4 K )5)

K

f ( m , n )=

4

comparison of two-dimensional arrays and found that it has

the lowest value. As the number of comparison of onedimensional array is given by

number

increased

by

100

times

so

we

need

of

the

two

dimensional

array

which

is

4 ( ( 4 100)5)

, 1875 times which is much more less

100

nm ( n1 )

+ nm ( m1 )

4

can calculate the values of m ,n by the following

method.

mn

(n+ 4 m5)

4

And

is

K ( K 1 )

, so if the

4

100 ( 1001 )

, almost 2500 times more comparisons as

4

that

f ( m , n )=

(1)

( )

m= 4 K /4

K

(n+ 4 m5)

4

m= ( m )

n=4 m

Since K is a constant and

to geometric inequality

m ,n > = 1 so according

If m>

4 ( (n 4 m)5)

K

4

m=

n=

4 ( ( 4 K )5)

K

4

When

n=4 m= 4 K

then the values of

f ( m , n ) is

the

minimum value.

K

m

SS

Algorithm

OSSA

EfSSA

OSSA

for

2

Dimensional Array

100

0

499500

249750

123991.1

61995.55

500

0

1249750

0

6248750

1401714

700856.8

100

00

4999500

0

24997500

3975000

1987500

150

00

1.12E+0

8

56246250

7310969

3655485

200

00

2E+08

99995000

11263708

5631854

If n>

n=

Some

time

it

might happen that the

calculated value of

( m n ) > K , so

we need to fill the

upon the data to be sorted. If the data is sorted in the

descending then we will fill the empty cells with infinitesimal

values and with infinite values otherwise.

Selection Sort Algorithms for 2 Dimensional Algorithms

V. RESULTS

After The following table shows the number of comparison of

one-dimensional array

and two-dimensional sorting

algorithm.

Algorithms for 2 Dimensional Algorithms

Algorithm

Algorithms for 2 Dimensional Algorithms

the increase in number of data elements, the line graph plotted

by OSSA is taking less time as compared to graph plotted by

Old SS and it will be true for any number of data.

VI. CONCLUSIONS

It is evident from the above results that optimized

selection algorithm for two-dimensional arrays is more

efficient than the simple selection sorting algorithm for the

same amount of data, and hence proved our claim to be an

efficient algorithm of the order of O ( n2 ) .

A MapReduce framework on graphics processors. Technical

Report HKUST-CS07-14, Department of Computer Science and

Engineering, HKUST, Nov. 2007.

[5]

[6]

[7]

REFERENCES

[1] T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C.

Stein.Introduction to Algorithms. MIT Press, Second edition,

Sept. 2001.

[2] D. E. Knuth. The Art of Computer Programming, Volume 3:

Sorting and Searching. Addison-Wesley, Boston, MA,

[3] J. Dean and S. Ghemawat. MapReduce: Simplified data

processing on large clusters. In Sixth Symposium on Operating

System Design and Implementation, Dec. 2004.

[8]

[9]

Algorithm International journal of Electrical and Computer Sciences.

2011, 11(01): p16~p22.

Peng Yueying. Quick Sorting Algorithm of Two-dimensional Array.

Guangxi Sciences. 1997, 4 (2): p93~p96.

Zheng Lian Kai. Method of Sorting Two-dimensional Array

Elements. Journal of Liaoning Normal Universit y(Natural Science

Edition). 1989(2):p7~p9.

Sun Junyi. Two-dimensional array sorting and optimization

techniques. Application Research of Computers. 1998(1), p12~p13.

Yan Weimin. Data Structure(2nd edition)[M]. Tsinghua University Press,

1992,p264~p293.

for two dimensional array, Fourth International conference on

genetic and Evolutionary Computing, 2010.

[11]

- Computer Project for Class 12Uploaded byAmaan Rizwan
- The Essential R Reference. Preview SampleUploaded byMark Gardener
- 11 SortingUploaded byapi-3799621
- R Programming TutorialUploaded byKabira Kabira
- 210CT Revision NotesUploaded bySalman Fazal
- CDSLABUploaded byVivekananda Ganjigunta Narayana
- ArrayUploaded byCrystalclear Mk
- Selection SortUploaded byBisal Timalsina
- ch10Uploaded bykyle_tosh3484
- Program to Sort an Element Using Merge SortUploaded bystan3690
- SHELL SORTUploaded byVaibhav Makkar
- Advanced Data Structures Lab ManualUploaded bysrisairampoly
- Jan p3Uploaded byKabir Singh
- Data Structure AlgorithmsUploaded byUmakant Yadav
- ArraysUploaded byAsafAhmad
- 9Uploaded bynagi_111
- 4-2-Sorting.pdfUploaded byKenneth Baker
- wipro1Uploaded byakhilrs
- Junaid (Quick Sort)Uploaded byJunaid khan
- sort-queUploaded byUjjwal Kumar Gupta
- Chapter 11 ProjectsUploaded byDeepakKattimani
- ProgramsUploaded byAyush Saini
- lecture17(Sortring)Uploaded byavinash
- Cr 25555560Uploaded byAnonymous 7VPPkWS8O
- lec03.pptUploaded bymanishbhardwaj8131
- Lesson 10 Lecture10Uploaded byRussel Ponferrada
- Lecture 03Uploaded byBraicot Espinoza Moran
- t05Uploaded byfsvvdfhf
- Inian Eco Lecture 02Uploaded byVickey Mehriya
- array lesson planUploaded byapi-409349213

- EEE 121 Reviewer.docxUploaded byAllen Lois Lanuza
- Lab+Manual+-+EEE3231Uploaded bymadhu1983aug30
- B.tech MDU Syllabus (CSE)Uploaded byPushpender Nandal
- When lightspeed isn't fast enoughUploaded byBình Nguyên
- DATA STRUCTUREUploaded byPiyush Kumar
- Eduqas a Computer Science Sams From 2015Uploaded byMohsin Khubaib Ahmed
- Data Structures & Algorithm Course Outline.pdfUploaded byAmmar Ajmal
- Modern B Tree Techniques 1Uploaded byHiroki Kumazaki
- A Minimal Algorithm for the Multiple-Choice Knapsack ProblemUploaded bysulphuckerium
- Divide & ConquerUploaded bySaraah Ghori
- 18 Query ProcessingUploaded byMSAMHOURI
- Javascript arraysUploaded bydnlkaba
- rahul.adaUploaded byRahul Kumar
- Data Structures in C ++Uploaded bychinmayb07
- ice_r_2011Uploaded bybluesman777
- Implementation and Application of Bubble Sort in 2D ArrayUploaded byInternational Journal for Scientific Research and Development - IJSRD
- Java Fundamentals Final-Version 1Uploaded byLuci Ionica
- c ProgrammingUploaded byvijiiiis
- Manual reference numpyUploaded byDaniel Souto
- AmazonUploaded byShammi Priyadarshi
- AI09 508 Mp Lab Manual x86Uploaded byArunBabu
- C&DS Lab ManualUploaded bySai Kiran Raju
- Selection SortUploaded byMAXI
- Meidan Filter DocUploaded bytrungkiendt9
- Course Outline COMP352_S2016Uploaded byncf
- Test_ Data Structure and Algorithm - Flashcards _ Quizlet Par 3Uploaded byspreemouse
- analysis and design of algorithm paper 4Uploaded byAyesha Ahmad
- Convex HullUploaded bybsudheertec
- BCA SyllabusUploaded byAngates1
- Assignment 5Uploaded bypiyank