Row’s Quantum Soaker


In the dimly lit basement of an old Victorian house, Dr. Rowan “Row” Hawthorne tinkered with wires, circuits, and vials of iridescent liquid. His unruly hair stood on end, a testament to his relentless pursuit of scientific breakthroughs. Row was no ordinary scientist; he was a maverick, a dreamer, and a little bit mad.

His obsession? Teleportation. The ability to traverse space instantaneously fascinated him. He’d read every paper, dissected every failed experiment, and even tried meditating in a sensory deprivation tank to unlock the secrets of the universe. But progress remained elusive.

One stormy night, as rain drummed against the windowpanes, Row had a revelation. He stared at the super soaker lying on his cluttered workbench. Its neon green plastic seemed out of place among the high-tech equipment. Yet, it held promise—a vessel for his audacious experiment.

Row connected the soaker to his quantum teleporter, a contraption that looked like a cross between a particle accelerator and a steampunk time machine. He filled the soaker’s reservoir with the iridescent liquid—a concoction of exotic particles and moonlight. The moment of truth had arrived.

He aimed the soaker at a potted fern in the corner of the room. The fern quivered, its fronds trembling with anticipation. Row squeezed the trigger, and a beam of shimmering energy shot out, enveloping the plant. The fern vanished, leaving behind a faint echo of chlorophyll.

Row’s heart raced. He stepped onto the teleporter’s platform, gripping the soaker like a futuristic weapon. The room blurred, and he felt weightless. In an instant, he materialized in the heart of the United Nations General Assembly—an audacious move, even for a scientist.

Diplomats gasped as Row stood before them, dripping wet and clutching the super soaker. The UN Secretary-General, a stern-faced woman named Elena Vargas, raised an eyebrow. “Who are you, and why are you interrupting—”

Row cut her off. “Ladies and gentlemen, I bring you the solution to global conflict.” He waved the soaker dramatically. “This humble water gun is now a weapon of peace.”

The assembly erupted in laughter. Row ignored them. “This device teleports emotions,” he declared. “Love, empathy, forgiveness—they’re all encoded in these water molecules. Imagine if we could share these feelings across borders, erase hatred, and build bridges.”

Elena Vargas leaned forward. “You’re insane.”

“Am I?” Row adjusted his lab coat. “Watch this.” He sprayed a mist of teleportation-infused water into the air. The room shimmered, and suddenly, delegates from warring nations embraced. Tears flowed, and old grievances dissolved. The super soaker had become a conduit for understanding.

Word spread. Row’s Quantum Soaker became a symbol of hope. He traveled to conflict zones, dousing soldiers and rebels alike. The Middle East, Kashmir, the Korean Peninsula—all witnessed miraculous transformations. The soaker’s payload wasn’t water; it was humanity’s shared longing for peace.

As the Nobel Committee awarded Row the Peace Prize, he stood on the podium, soaking wet, and addressed the world. “We’ve spent centuries fighting over land, resources, and ideologies,” he said. “But what if we fought for compassion, kindness, and understanding instead?”

And so, the super soaker became a relic of a new era. Rows of them lined the halls of diplomacy, ready to douse flames of hatred. The world learned that sometimes, the most powerful inventions emerge from the unlikeliest of sources—a mad scientist’s basement, a child’s toy, and a dream of a better tomorrow.

And Dr. Rowan Hawthorne? He continued his experiments, pushing the boundaries of science. But he never forgot the day he wielded a super soaker and changed the course of history—one teleportation at a time.

QuickSort sorting algorithm in java with Generics that implement Comparable

In this article I’m going to touch on the sorting algorithm called Quicksort. Its worst case time complexity is O(n^2) and its best case time complexity is O(nlogn). Firstly the method we are going to make is going to take a generic array and those elements should implement the Comparable interface so they can be sorted. Take this Circle class for example. When you implement the Comparable interface you specify in the compareTomethod what makes a circle greater than, less than, or equal to another circle. In this example we return whether the radius of the circle is bigger or smaller than the circle it is being compared to.

Circle.java

/**
 * author: copypasteearth
 * date: 7/17/2019
 */
public class Circle implements Comparable<Circle> {
    public int xValue;
    public int yValue;
    public int radius;

@Override
public int compareTo(Circle o) {
return (this.radius - o.radius);
}
@Override
public String toString() {
return "x: " + xValue + " ---y: " + yValue + " ---radius: " + radius;
}
}

Next we create the Quicksort class that has the method quicksort and a main method to test out the quicksort method. The quicksort method is a recursive method and the base case is if(a < b). The method goes through the generic array and sorts the elements based on what the compareTo method tells it. Here is the Quicksort class.

Quicksort.java

/**
 * author: copypasteearth
 * date: 7/17/2019
 */
import java.util.Random;
public class QuickSort<T extends Comparable<T>> {

public static <T extends Comparable<T>> void quicksort(T[] array, int a, int b) {
if (a < b) {
int i = a, j = b;
T x = array[(i + j) / 2];

do {
while (array[i].compareTo(x) < 0) i++;
while (x.compareTo(array[j]) < 0) j--;

if ( i <= j) {
T tmp = array[i];
array[i] = array[j];
array[j] = tmp;
i++;
j--;
}

} while (i <= j);

quicksort(array, a, j);
quicksort(array, i, b);
}
}

public static void main(String[] args) {
Integer[] integerarray = {50, 55, 11, 89, 90, 1, 20, 11};
QuickSort<Integer> qsinteger = new QuickSort<Integer>();
qsinteger.quicksort(integerarray, 0, integerarray.length-1);
for(Integer i: integerarray) {
System.out.println(i);
}
String[] stringarray = {"bird","moth","apple","zebra","banana","desert","pig"};
QuickSort<String> qsstring = new QuickSort<String>();
qsstring.quicksort(stringarray, 0, stringarray.length-1);
for(String i: stringarray) {
System.out.println(i);
}
Circle[] circlearray = new Circle[20];
Random rand = new Random();
for (int index = 0; index < 20; index++)
{
circlearray[index] = new Circle();
circlearray[index].xValue = Math.abs(rand.nextInt()) % 100;
circlearray[index].yValue = Math.abs(rand.nextInt()) % 100;
circlearray[index].radius = Math.abs(rand.nextInt()) % 100;

}
System.out.println("Circle Array Unsorted....");
for(int i = 0;i < 20;i++){

System.out.println(circlearray[i]);
}
QuickSort<Circle> qscircle = new QuickSort<Circle>();
qscircle.quicksort(circlearray, 0, circlearray.length-1);
System.out.println("Circle Array Sorted");
for(Circle i: circlearray) {
System.out.println(i);
}

}

}

If you run this code you will see the results from the main method. First it sorts an Integer array and then a String array. Then it makes a Circle array and prints them out unsorted then it sorts them and then prints them out again sorted. That pretty much does it for this example on quicksorting. In the future I will probably go through the rest of the sorting algorithms. Hope you enjoyed it.

Donate or Subscribe to support Copypasteearth!!!!!


×
Your Donation
copypasteearth@gmail.com">

%d bloggers like this: