You are on page 1of 18

TUGAS MANDIRI 4

Disusun untuk memenuhi tugas


Mata Kuliah: Struktur Data (1512600057)
Dosen Pengampu: Hamidillah Ajie, S.Si., M.T.

Disusun Oleh:
Muhammad Ikhwal Budiatmoko
1512621066
PENDIDIKAN TEKNIK INFORMATIKA DAN KOMPUTER
FAKULTAS TEKNIK
UNIVERSITAS NEGERI JAKARTA
2022
DAFTAR ISI
Cover.........................................................................................................................................1
Kode Program..........................................................................................................................3
Screenshot Uji Coba Program..............................................................................................17
Kode Program
public class LLNode01_1512621066 {

public static void main(String[] args) {

LLNode01_1512621066 ll = new
LLNode01_1512621066();

int data=15;

System.out.println("Muhammad Ikhwal B.");

System.out.println("1512621066");

System.out.println("Pendidikan Teknik
Informatika Dan Komputer Kelas B");

System.out.println("Tugas Mandiri 4");

System.out.println("");

ll.print();

ll.insertPost(data++,1);

ll.print();

ll.insertFirst(data++);

ll.print();

ll.insertFirst(data++);

ll.print();

ll.insertLast(data++);

ll.print();

ll.insertLast(data++);

ll.print();
ll.insertPost(data++,data-1);

ll.print();

ll.insertPost(data++,3);

ll.print();

System.out.println(ll.search(3));

System.out.println(ll.search(17));

System.out.println("");

ll.deleteFirst();

ll.print();

ll.deleteLast();

ll.print();

ll.deletePost(data--,7);

ll.print();

ll.deleteFirst();

ll.print();

ll.jumlahList();

int size;

NodeLL first;

LLNode01_1512621066(){

first = null;

size = -1;

void insertFirst(int data){


NodeLL nl = new NodeLL(data);

if (first!=null) nl.next = first;

first = nl;

size++;

void insertLast(int data){

NodeLL nl = new NodeLL(data);

NodeLL p;

if(isEmpty()) {

insertFirst(data);

}else{

p=first;

while(p.next!=null){

p=p.next;

p.next=nl;

size++;

void insertPost(int data, int pos){

if(pos==1) insertFirst(data);

else{
NodeLL nl = new NodeLL(data);

NodeLL p = first;

int i=1;

do{

i++;

if(i==pos){

nl.next = p.next;

p.next = nl;

p=p.next;

}while((p!=null)&&(i<=pos));

size++;

boolean isEmpty(){

return first==null;

void print(){

NodeLL p=first;

if(isEmpty()){

System.out.println("List kosong ");

}else{

System.out.print("Isi List : ");

while(p.next!=null){
System.out.print(p.data + " ");

p=p.next;

System.out.print(p.data + " ");

System.out.println("");

System.out.println("Size : " + size);

boolean search(int cari){

if(isEmpty()){

return false;

}else{

NodeLL p=first;

while(p!=null){

if(p.data==cari) {

return true;

p=p.next;

return false;

void deleteFirst(){
NodeLL nl = new NodeLL(0);

if (first == null) first = nl.next;

first = first.next;

size--;

void deleteLast(){

NodeLL nl = new NodeLL(0);

NodeLL p;

if(isEmpty()) {

insertFirst(0);

}else{

p=first.next;

while(p.next==null){

nl=p.next.next;

p.next.next.next.next=nl.next;

size--;

void deletePost(int data, int pos){

if(pos==1) insertFirst(7);

else{

NodeLL nl = new NodeLL(7);

NodeLL p = first;
int i=1;

do{

i++;

if(i!=pos && i==pos){

nl.next.next = p.next;

p.next = nl.next;

p.next=p.next.next;

}while((p!=null)&&(i>=pos));

size--;

void jumlahList() {

int t=2;

t-=size;

class NodeLL{

int data;

NodeLL next;

// Constructor +---+---+

NodeLL(int d){ // | d | \ |

data = d; // +---+---+
next = null;

public class LLNode02_1512621066 {

public static void main(String[] args) {

LLNode02_1512621066 ll = new LLNode02_1512621066();

int data=15;

System.out.println("Muhammad Ikhwal B.");

System.out.println("1512621066");

System.out.println("Pendidikan Teknik Informatika Dan Komputer Kelas B");

System.out.println("Tugas Mandiri 4");

System.out.println("");

ll.print();

ll.insertPost(data++,1);

ll.print();

ll.insertFirst(data++);

ll.print();

ll.insertFirst(data++);

ll.print();

System.out.println("");

ll.insertLast(data++);

ll.print();

ll.insertLast(data++);

ll.print();

System.out.println("");

ll.insertPost(data++,data-1);
ll.print();

ll.insertPost(data++,3);

ll.print();

System.out.println("");

System.out.println(ll.search(3));

System.out.println(ll.search(17));

System.out.println("");

ll.deleteFirst();

ll.print();

ll.deleteLast();

ll.print();

ll.deletePost(data--,7);

ll.print();

ll.deleteFirst();

ll.print();

int size;

NodeLL first;

NodeLL last;

LLNode02_1512621066(){

first = null;

last = null;

size = -1;

void insertFirst(int data){

NodeLL nl = new NodeLL(data);

if (first==null) last=nl;

nl.next = first;

first = nl;

size++;
}

void insertLast(int data){

NodeLL nl = new NodeLL(data);

NodeLL p;

if(isEmpty()) {

insertFirst(data);

}else{

last.next=nl;

last = nl;

size++;

void insertPost(int data, int pos){

if(pos==1) insertFirst(data);

else{

NodeLL nl = new NodeLL(data);

NodeLL p = first;

int i=1;

do{

//System.out.println("pos = " + pos +", i = " + i);

i++;

if(i==pos){

nl.next = p.next;

if(p==last) last = nl;

p.next = nl;

p=p.next;

}while((p!=null)&&(i<=pos));

}
size++;

boolean isEmpty(){

return first==null;

void print(){

NodeLL p=first;

if(isEmpty()){

System.out.println("List kosong ");

}else{

System.out.print("Isi List : ");

while(last!=p){

System.out.print(p.data + " ");

p=p.next;

System.out.print(p.data + " ");

System.out.println("");

System.out.println("Size : " + size);

boolean search(int cari){

if(isEmpty()){

return false;

}else{

NodeLL p=first;

while(p!=null){

if(p.data==cari) {

return true;

p=p.next;
}

return false;

void deleteFirst(){

NodeLL nl = new NodeLL(0);

if (first == null) last = nl.next;

first = first.next;

size--;

void deleteLast(){

NodeLL nl = new NodeLL(0);

NodeLL p = first;

if (p!=last) {

while (p.next!=last){

p = p.next;

last = p;

last.next = null;

size--;

void deletePost(int data, int pos){

if(pos==1) insertFirst(7);

else{

NodeLL nl = new NodeLL(7);

NodeLL p = first;

NodeLL q = last;

int i=1;

do{

i++;
if(i!=pos && i==pos){

nl.next.next = p.next;

p.next = nl.next;

q = p.next.next;

p.next = q;

}while((p==null)&&(i>=pos));

size--;

class NodeLL{

int data;

NodeLL next;

// Constructor +---+---+

NodeLL(int d){ // | d | \ |

data = d; // +---+---+

next = null;

}
LLNode01

LLNode02

You might also like