From 947127cfb6b90e05c0ca42392dba9fde90054224 Mon Sep 17 00:00:00 2001 From: shellhub Date: Thu, 26 Sep 2019 16:14:51 +0800 Subject: [PATCH] make code less --- DataStructures/Queues/PriorityQueues.java | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/DataStructures/Queues/PriorityQueues.java b/DataStructures/Queues/PriorityQueues.java index bbefa1f69..b2b959113 100644 --- a/DataStructures/Queues/PriorityQueues.java +++ b/DataStructures/Queues/PriorityQueues.java @@ -42,18 +42,15 @@ class PriorityQueue { public void insert(int value) { if (isFull()) { throw new RuntimeException("Queue is full"); - } - if (nItems == 0) { - queueArray[0] = value; } else { - int j = nItems; - while (j > 0 && queueArray[j - 1] > value) { - queueArray[j] = queueArray[j - 1]; // Shifts every element up to make room for insertion + int j = nItems - 1; // index of last element + while (j >= 0 && queueArray[j] > value) { + queueArray[j + 1] = queueArray[j]; // Shifts every element up to make room for insertion j--; } - queueArray[j] = value; // Once the correct position is found the value is inserted - } - nItems++; + queueArray[j + 1] = value; // Once the correct position is found the value is inserted + nItems++; + } } /**