開発メモ

開発用のメモです。

Sort

リスト構造

ソース package jp.mirageworld.algorithm.util; import java.util.AbstractList; import java.util.Arrays; import java.util.Collection; import java.util.List; public class GenericList<E> extends AbstractList<E> { public static class Creator<E> { public </e></e></e>…

シェイカーソート

ソース package jp.mirageworld.algorithm.sort; import java.util.ArrayList; import java.util.List; public class ShakerSort { public static <T extends Comparable<T>> List<T> sort(List<T> list) { List<T> retList = new ArrayList<T>(list); boolean next = true; int top = 0; int bot</t></t></t></t></t>…

選択ソート

ソース package jp.mirageworld.algorithm.sort; import java.util.ArrayList; import java.util.List; public class SelectSort { public static <T extends Comparable<T>> List<T> sort(List<T> list) { List<T> retList = new ArrayList<T>(list); int last = retList.size(); for (int i = 0</t></t></t></t></t>…

クイックソート

ソース package jp.mirageworld.algorithm.sort; import java.util.ArrayList; import java.util.List; public class QuickSort { public static <T extends Comparable<T>> List<T> sort(List<T> list) { List<T> retList = new ArrayList<>(list); return sort(retList, 0, retList.size() -</t></t></t></t>…

ノームソート

ソース package jp.mirageworld.algorithm.sort; import java.util.ArrayList; import java.util.List; public class GnomeSort { public static <T extends Comparable<T>> List<T> sort(List<T> list) { List<T> retList = new ArrayList<T>(list); for (int i = 0; i + 1 < retList.size();) {</t></t></t></t></t>…

奇偶転置ソート

ソース package jp.mirageworld.algorithm.sort; import static org.junit.Assert.*; import java.util.Collections; import java.util.HashSet; import java.util.LinkedList; import java.util.List; import java.util.Set; import org.junit.Test; public…

コンボソート

ソース package jp.mirageworld.algorithm.sort; import java.util.ArrayList; import java.util.List; public class ComboSort { public static <T extends Comparable<T>> List<T> sort(List<T> list) { List<T> retList = new ArrayList<T>(list); boolean next = true; int last = retList.si</t></t></t></t></t>…

バブルソート

ソース package jp.mirageworld.algorithm.sort; import java.util.ArrayList; import java.util.List; public class BubbleSort { public static <T extends Comparable<T>> List<T> sort(List<T> list) { List<T> retList = new ArrayList<T>(list); boolean next = true; while (next) { next </t></t></t></t></t>…

三分木探査

ソース package jp.mirageworld.algorithm.search; import java.util.List; public class TrinitySearch { public static <T extends Comparable<T>> boolean container(List<T> list, T target) { return container(list, target, 0, list.size()); } public static <T extends Comparable<T>> boolean containe</t></t></t>…

二分木探査

ソース package jp.mirageworld.algorithm.search; import java.util.List; public class BinarySearch { public static <T extends Comparable<T>> boolean container(List<T> list, T target) { return container(list, target, 0, list.size()); } public static <T extends Comparable<T>> boolean container</t></t></t>…

シャッフル

ソース package jp.mirageworld.algorithm.shuffle; import java.util.ArrayList; import java.util.List; public class RandomShuffle { public static <T extends Comparable<T>> List<T> shuffle(List<T> list) { List<T> retList = new ArrayList<T>(list); for (int i = 0; i < list.size();</t></t></t></t></t>…

最短経路検索

多分もっと短くなる import java.util.*; import java.io.*; public class Main { protected static String[][] matrix; protected static int min = 9999; public static void main (String[] args) throws Exception { // Java sun-jdk-1.7. try ( InputSt…

Twitter: @asahina_alice