1 - eLisa UGM

advertisement
SOAL UJIAN SISIPAN MATRIKULASI TA. 2013/2014
S1 ILMU KOMPUTER FMIPA UNIVERSITAS GADJAH MADA YOGYAKARTA
MATA UJIAN : ALGORITMA DAN STRUKTUR DATA
WAKTU
: 100 Menit
SIFAT
: Buku Terbuka
DOSEN
: Drs. Janoe Hendarto MKom.
TANGGAL
: 31 Oktober 2013
1. a. Sebutkan apa saja keuntungannya membuat struktur data dengan tipe data array dan
keuntungannya membuat struktur data dengan tipe data pointer.
b. Jelaskan kelebihan dan kekurangan dari single linked list dan double linked list.
2. a. Berikut adalah subprogram untuk menghapus node-node dimulai dari node dengan data =
x hingga node terakhir pada doubly linked list, lengkapilah subprogram tersebut dengan
mengisi statemen/variable yang sesuai pada ..........
void DeleteNode(Dlist &L)
{ int x;
Dlist t,r;
cout<<"data awal yg mau dihapus :";cin>>x;
if ( L->data == x ) {
while ( L != NULL ) {
r=L;
.......... ;
.......... ;
}
} else {
t = L;
while ( t != NULL && t->data != x ) t = t->next ;
if ( t == NULL) cout<<" data tidak ada"<<endl;
else {
............... = NULL;
while ( t != NULL ) {
r=t;
......... ;
......... ;
}
}
}
}
b. Tuliskan output program berikut :
#include<iostream>
#include<conio.h>
using namespace std;
typedef struct node
{ char data;
struct node *next;} *list;
main() {
int i, n = 10; list b, t, L = NULL;
for (i=1; i<=n; i++) {
b=new node; b->next=NULL; b->data = 67 + (7*i+i*2)%25;
if (L == NULL) L = b; else if (b->data<=70) {b->next = L; L = b;}
else { t = L; while (t->next !=NULL && t->data < b->data) t = t->next;
b->next = t->next; t->next = b; }
}
t = L; while (t!=NULL) { cout<< t->data<<" "; t = t->next; }
getch();
}
3. a. Dengan menggunakan stack buatlah subprogram untuk membalik urutan elemen matrik,
sebagai gambaran berikut contoh matrik input dan outputnya.
Input
:
7
2
3
5
8
7
2
9
4
1
4
8
7
3
7
3
5
2
Output :
2
5
3
7
3
7
8
4
1
4
9
2
7
8
5
3
2
7
( Saudara boleh langsung menggunakan subprogram standar pada stack )
b. Buatlah subprogram BucketSort untuk mengurutkan n data bilangan yang hanya terdiri 0
s.d. 9. (Saudara boleh langsung menggunakan subprogram standar pada queue)
Download