บทความ:
Perl
PHP
HTML
CSS
XML
DTD
XSD
RSS
WSDL
Linux
Site Map
Board
Connect Us: facebooktwitter

การเขียน Sub เพื่อเรียงค่าในอะเรย์แบบ Bubble Sort

นนทชัย ทรัพย์ทวีพงศ์ 2009-08-21 23:13:20  ให้คะแนนบทความนี้(0)  ลดคะแนนบทความ(0)  จำนวน Comment(0)  จำนวนคนอ่าน(1840)  

ในบทความนี้ผมจะยกตัวอย่างการเขียน sub ขึ้นมาเพื่อทำการเรียงค่าในอะเรย์ทั้งจากน้อยไปมากและจากมากไปน้อย ซึ่งจะใช้วิธีการเรียงแบบ Bubble Sort เราลองไปดูตัวอย่างการเขียน sub ขึ้นมากันเลยครับ พร้อมทั้งวิธีการเรียกใช้ด้วย

ตัวอย่างการเขียน sub ในการเรียงค่าอะเรย์แบบ BubbleSort()

#!usr/bin/perl

sub BubbleSort {
	my ($sortby, @arr) = @_;

	if ($sortby eq "desc") {
		for ($i = 0; $i < $#arr; $i++) {
			for ($j = 0; $j < $#arr; $j++) {
				if ($arr[$j] < $arr[$j+1]) {
					$tmp = $arr[$j+1];
					$arr[$j+1] = $arr[$j];
					$arr[$j] = $tmp;
				}
			}

		}
	} else {
		for ($i = 0; $i < $#arr; $i++) {
			for ($j = 0; $j < $#arr; $j++) {
				if ($arr[$j] > $arr[$j+1]) {
					$tmp = $arr[$j+1];
					$arr[$j+1] = $arr[$j];
					$arr[$j] = $tmp;
				}
			}

		}
	}

	return @arr;
}

ตัวอย่างการเรียกใช้ sub BubbleSort()

<?php
#!usr/bin/perl
@arr = (2, 5, 1, 3, 4, 8, 10);
@arr = &BubbleSort("asc", @arr);
print @arr ;
print "\n";

@arr = &BubbleSort("desc", @arr);
print @arr;
?>
แหล่งที่มา:

Related Article

Related Download



Login  Login
ค้นหา  Search