oracle 冒泡

DECLARE
   TYPE num_tt IS TABLE OF INT;
   num_t num_tt:=num_tt();
   mid_val INT;
BEGIN
   num_t.extend(20);
   FOR i IN 1..20 LOOP
     num_t(i) := trunc(dbms_random.value(200,100000));
   END LOOP;
   dbms_output.put_line('before sort:');
   FOR i IN 1..num_t.count LOOP
     dbms_output.put_line(num_t(i)||',');
   END LOOP;
   FOR i IN REVERSE 1..num_t.count-1 LOOP
     FOR j IN 1..i LOOP
       IF(num_t(j)>num_t(j+1)) THEN
          mid_val := num_t(j);
          num_t(j) := num_t(j+1);
          num_t(j+1) := mid_val;
       END IF;
     END LOOP;
   END LOOP;
   dbms_output.put_line('after sort:');
   FOR i IN 1..num_t.count LOOP
     dbms_output.put_line(num_t(i)||',');
   END LOOP;
END;
  
  
  
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章