stanford-oval/wikipedia huggingface dataset:
連結リスト
連結リストの操作 > 線形リスト > 双方向リスト

双方向リストでは更新すべきポインタが増えるが、逆方向のポインタでリスト上の前の要素を参照できるため、操作に必要な情報は少なくて済む。これにより、新たな操作が可能となり、特殊ケースの関数が不要になる。ノードには前の要素を指す "prev" フィールドが追加される。また リスト構造の "lastNode" が最後尾のノードを指す。空のリストの場合、"list.firstNode" も "list.lastNode" も "null" である。
record Node {
    data // ノードに格納されるデータ
    next // 次のノードへの参照（最後尾の場合は null）
    prev // 前のノードへの参照（先頭の場合は null）
 }
record List {
     Node firstNode   // リストの先頭ノードを指す（空のリストの場合は null）
     Node lastNode    // リストの最後尾ノードを指す（空のリストの場合は null）
 }
双方向リストでは双方向に繰り返しが可能である。方向は必要に応じて何度でも変えられる。
順方向
node := list.firstNode
 while node ≠ null
     <node.data に対して何か行う>
     node := node.next
逆方向
node := list.lastNode
 while node ≠ null
     <node.data に対して何か行う>
     node := node.prev
指定したノードの次に新たなノードを挿入する関数と、前に挿入する関数を示す。
function insertAfter(List list, Node node, Node newNode)
     newNode.prev := node
     newNode.next := node.next
     if node.next = null
         list.lastNode := newNode
     else
         node.next.prev := newNode
     node.next := newNode
function insertBefore(List list, Node node, Node newNode)
     newNode.prev := node.prev
     newNode.next := node
     if node.prev is null
         list.firstNode := newNode
     else
         node.prev.next := newNode
     node.prev    := newNode
空のリストを含むリストの先頭に新たなノードを挿入する関数が必要となる。
function insertBeginning(List list, Node newNode)
     if list.firstNode = null
         list.firstNode := newNode
         list.lastNode  := newNode
         newNode.prev := null
         newNode.next := null
     else
         insertBefore(list, list.firstNode, newNode)
同様に、最後尾にノードを挿入する関数を示す。
function insertEnd(List list, Node newNode)
     if list.lastNode = null
         insertBeginning(list, newNode)
     else
         insertAfter(list, list.lastNode, newNode)
ノードの削除は簡単で、firstNode と lastNode にだけ注意すればよい。
function remove(List list, Node node)
   if node.prev = null
       list.firstNode := node.next
   else
       node.prev.next := node.next
   if node.next = null
       list.lastNode := node.prev
   else
       node.next.prev := node.prev
   destroy node
この手続きで、リストから1つだけ残っているノードを削除する場合、"firstNode" と "lastNode" が "null" に設定され、正しく処理が行われる。また、"removeBefore" や "removeAfter" といった手続きは不要であり、単に "remove(node.prev)" や "remove(node.next)" を呼び出せばよい。
連結リストの操作 > 循環リスト

循環リストには、片方向のものと双方向のものがある。循環リストでは環状にノードが連結されているので、"null" は使わない。キューのような前後関係のあるリストでは、リストの最後尾ノードへの参照を保持する必要がある。循環リストでは最後尾ノードの次のノードは先頭ノードである。要素の最後尾への追加や先頭からの削除は定数時間で可能である。
循環リストの利点は、任意のノードから開始してリスト全体をたどることができる点である。このため、"firstNode" や "lastNode" も保持する必要がないことが多いが、空のリストを表すには何らかの特別な表現が必要である。ここでは "lastNode" に "null" を格納することで空のリストを表す。これにより空でないリストでの追加・削除は大幅に単純化されるが、空のリストを特殊ケースとして扱う必要がある。
連結リストの操作 > 循環リスト > 双方向循環リスト

someNode は空でないリストにある何らかのノードであるとする。ここでは任意の "someNode" から繰り返しを開始するものとしている。
順方向
node := someNode
 do
     node.value について何か行う
     node := node.next
 while node ≠ someNode
逆方向
node := someNode
 do
     node.value について何か行う
     node := node.prev
 while node ≠ someNode
ループの最後で終了条件のチェックをしている点に注意されたい。これは、リストに "someNode" という1つのノードしかない場合に重要である。
次の関数は双方向循環リスト上のノードの次に新たなノードを追加する。
function insertAfter(Node node, Node newNode)
     newNode.next := node.next
     newNode.prev := node
     node.next.prev := newNode
     node.next      := newNode
"insertBefore" を実現したければ、単に "insertAfter(node.prev, newNode)" を行えばよい。空のリストへのノードの追加は次の特殊関数が必要となる。
function insertEnd(List list, Node node)
     if list.lastNode = null
         node.prev := node
         node.next := node
     else
         insertAfter(list.lastNode, node)
     list.lastNode := node
先頭に挿入したければ、"insertAfter(list.lastNode, node)" を実行すればよい。ノードの削除では空のリストにうまく対処する必要がある。
function remove(List list, Node node)
     if node.next = node
         list.lastNode := null
     else
         node.next.prev := node.prev
         node.prev.next := node.next
         if node = list.lastNode
             list.lastNode := node.prev;
     destroy node
双方向リストと同様、"removeAfter" と "removeBefore" は "remove(list, node.prev)" と "remove(list, node.next)" で実現可能である。
ノードの配列を使った連結リスト

参照型をサポートしていない言語でも、ポインタの代わりに配列にインデックスを使うことでリンクを実現できる。構造体の配列を用意し、リンク用フィールドには配列のインデックスを表す整数を保持することで次（あるいは前）のノードを指すものとする。配列にある全ノードを使う必要はない。構造体がサポートされていない場合、並列配列を代替として使うことができる。
例として、次の構造体を示す。ポインタの代わりに配列にインデックスを使っている。
record Entry {
    integer next; // 次のエントリの配列インデックス
    integer prev; // 前のエントリ（双方向の場合）
    string name;
    real balance;
 }
この構造体の配列を生成し、リストの先頭のインデックスを保持する整数変数を用意すれば、連結リストを構築できる。
integer listHead;
Entry Records[1000];
要素間のリンクはリスト上の次（または前）の要素の配列インデックスを Next あるいは Prev フィールドに格納することでなされる。例えば、次のようになる。
| インデックス | Next | Prev | Name | Balance |
| --- | --- | --- | --- | --- |
| 0 | 1 | 4 | Jones, John | 123.45 |
| 1 | -1 | 0 | Smith, Joseph | 234.56 |
| 2 (listHead) | 4 | -1 | Adams, Adam | 0.00 |
| 3 |  |  | Ignore, Ignatius | 999.99 |
| 4 | 0 | 2 | Another, Anita | 876.54 |
5: 
6: 
7: 
この例で、ListHead は 2 になっており、そこがリストの先頭ノードである。3番と5から7番のエントリはリスト上に含まれていない。これらのセルはリストに新たに追加することが可能である。ListFree という整数変数を用意してフリーリストを構成しておくと扱いやすくなる。全てのエントリが使われている場合、配列の大きさを拡張するか、一部要素を削除して空きを作らないと、新たな要素をリストに追加できなくなる。
次のコードは、リストを辿って、name と balance を表示するものである。
i := listHead;
while i >= 0 { // リスト上をループする
     print i, Records[i].name, Records[i].balance // エントリの印字
     i = Records[i].next;
}
この手法の利点は次の通りである。
リンクとしてアドレスを使っていないので、リロケータブル（メモリ上でコピー可能）である。また、直接シリアライズしてディスクやネットワークに転送可能である。
小さいリストの場合、配列インデックスの方がポインタよりも小さくて済むことが多い。
ノードがメモリ上に連続して存在するため、参照の局所性が向上する可能性がある。
素朴な動的メモリ確保でノード用にメモリを割り当てると無駄が生じる可能性があるが、この方式ではノード毎のオーバーヘッドはほとんどない。
事前に配列として確保されている範囲では、動的メモリ確保よりもノードの生成が高速化される。
ただし、この方式にはノード群のためのメモリ領域管理を独自に行わなければならないという欠点がある。このため、次のような問題が生じる。
実装が複雑になる。
全ノードを使い切ったとき、配列の拡張が困難か不可能な場合がある。汎用のメモリプールからノード用にメモリを確保するほうが容易である。
動的配列に要素を追加しようとすると、予期しないタイミングで定数時間ではなく線形時間（O(n)）がかかってしまう（平均すれば定数時間と言える）。
予想したよりもノード数の使用量が少ないと、メモリを無駄に確保することになる。
以上のような理由から、この手法は動的メモリ確保をサポートしていない言語で主に利用される。問題の多くは、配列生成時にリストの最大サイズが分かっている場合には問題ではなくなる。
言語サポート

LISPやScheme、Prologといったプログラミング言語は、片方向リストを組み込みで装備している。多くの関数型言語では、リストを構成するノードを「consセル」と呼ぶ。consセルには "car" 部分と "cdr" 部分があり、"car" 部はそのノードのデータへの参照、"cdr" 部は次のノードへの参照を格納している。consセルは他のデータ構造にも使われるが、主な用途はリストを構成することである。
抽象データ型やテンプレートをサポートする言語では、連結リストの抽象データ型やテンプレートを使って、連結リストを構築できる。
オブジェクト指向プログラミング言語では、次のようなクラスが連結リスト用に用意されている。
C++（STL） - std::list<T>クラス（<list>）
Java - java.util.LinkedListクラス
.NET - System.Collections.Generic.LinkedList<T>クラス
以下に、C言語での片方向リストの例を示す。
#include <stdio.h>   /* for printf */
#include <stdlib.h>  /* for malloc */

typedef struct ns {
	int data;
	struct ns *next;
} node;

node *list_add(node **p, int i) { /* add head */
    node *n = malloc(sizeof(node)); /* you normally don't cast a return value for malloc */
    n->next = *p;
    *p = n;
    n->data = i;
    return n;
}

node *list_add_tail(node **p, int i) { /* add tail */ 
    node *n;
    node *ptr;
    if (*p == NULL) {
        n = list_add(p, i);
    } else {
        ptr = *p;
        while (ptr->next != NULL) {
            ptr = ptr->next;
        }
        n = malloc(sizeof(node));
        n->next = NULL;
        n->data = i;
        ptr->next = n;
    }
    return n;
}

void list_remove(node **p) { /* remove head */
    if (*p != NULL) {
        node *n = *p;
	*p = (*p)->next;
	free(n);
    }
}

void list_remove_tail(node **p) { /* remove tail */
    if (*p != NULL) {	
        if( (*p)->next == NULL ) {
            list_remove(p);
        } else {
            node *ptr = *p;	
            node *pre;
            while (ptr->next != NULL) {
                pre = ptr;
                ptr = ptr->next;
            }
            pre->next = NULL;
            free(ptr);
        }
    }
}

void list_remove_all(node **p) { /* remove all node */
    while (*p != NULL) {
        list_remove(p);
    }
}

node **list_search(node **n, int i) {
    while (*n != NULL) {
        if ((*n)->data == i) {
            return n;
        }
        n = &(*n)->next;
    }
    return NULL;
}

void list_print(node *n) {
    if (n == NULL) {
        printf("list is empty\n");
    }
    while (n != NULL) {
        printf("print %p %p %d\n", n, n->next, n->data);
        n = n->next;
    }
}

int main(void) {
    node *n = NULL;

    list_add(&n, 0); /* list: 0 */
    list_add(&n, 1); /* list: 1 0 */
    list_add(&n, 2); /* list: 2 1 0 */
    list_add(&n, 3); /* list: 3 2 1 0 */
    list_add(&n, 4); /* list: 4 3 2 1 0 */
    list_print(n);
    list_remove(&n);            /* remove first (4) */
    list_remove(&n->next);      /* remove new second (2) */
    list_remove(list_search(&n, 1)); /* remove cell containing 1 (first) */
    list_remove(&n->next);      /* remove second to last node (0) */
    list_remove(&n);            /* remove last (3) */
    list_print(n);

    return 0;
}
内部収納と外部収納

連結リストを構築する際、データをノードそのものに格納するか、別のデータ構造への参照のみを格納するかという選択を迫られる。前者を「内部収納; internal storage[要出典]」、後者を「外部収納; external storage[要出典]」と呼ぶ。内部収納の方がデータアクセスが効率化され、全体としてメモリ使用量が低減され、参照の局所性が向上し、リストに関するメモリ管理も簡素化される（データはノードと共に確保・解放される）。
一方、外部収納はより汎用的だという利点がある。データの内容に依存しないデータ構造とリスト操作コードを形成可能である。また、複数のノードで同じデータを共有することも容易に実現できる。内部収納の場合も、通常のリンクとは別に、同じ内容のデータを保持するノードを連結するフィールドを持てば、同様のことが可能になるが、リスト操作にあたってそれも考慮する必要が出てくる。
一般に、データ構造を複数の連結リストに属させる必要がある場合、外部収納が最善の手法である。データ構造が1つの連結リストにしか属さない場合、内部収納の方が若干良いが、外部収納の汎用リスト操作パッケージが利用可能なら、それを利用するほうがよい場合もある。
いくつかの言語で採用されている別の手法として、いくつかの種類のデータ構造があって、それらの先頭部分の同じ位置にリストのための "next" および "prev" のフィールドが存在する場合がある。この場合、リスト操作は汎用的なルーチンを使い、個々のノード内のデータは個別のルーチンで処理する。様々な種類のメッセージを受信する際の構文解析などでよく使われる。メッセージのキューへの追加と削除は汎用的なルーチンで行われる。メッセージの種類がメッセージの先頭にあり、それを見て適切なメッセージ処理ルーチンを呼び出す。
内部収納と外部収納 > 内部収納と外部収納の例

ここでは、家族とその構成員の連結リストを処理するコードを例として示す。内部収納の場合、構造体は次のようになる。
record member { // 家族のメンバー
     member next
     string firstName
     integer age
 }
 record family { // 家族
     family next
     string lastName
     string address
     member members // この家族のメンバーのリストの先頭
 }
家族のリストと各家族のメンバーを表示するルーチンは、内部収納の場合、次のようになる。
aFamily := Families // 家族リストの先頭から開始
 while aFamily ≠ null { // 家族リスト上でループ
     家族に関する情報を印字
     aMember := aFamily.members // その家族のメンバーのリストの先頭を得る
     while aMember ≠ null { // メンバーのリスト上でループ
         メンバーに関する情報を印字
         aMember := aMember.next
     }
     aFamily := aFamily.next
 }
外部収納を使うと、構造体は次のようになる。
record node { // 汎用リンク構造体
     node next
     pointer data // ノードに付属するデータを指す汎用ポインタ
 }
 record member { // 家族構成員に関する構造体
     string firstName
     integer age
 }
 record family { // 家族に関する構造体
     string lastName
     string address
     node members // この家族のメンバーのリストの先頭
 }
家族のリストと各家族のメンバーを表示するルーチンは、外部収納の場合、次のようになる。
famNode := Families // 家族リストの先頭から開始
 while famNode ≠ null { // 家族リスト上でループ
     aFamily = (family)famNode.data // ノードから家族データ構造体を取り出す
     家族に関する情報を印字
     memNode := aFamily.members // その家族のメンバーのリストの先頭を得る
     while memNode ≠ null { // メンバーのリスト上でループ
         aMember := (member)memNode.data // ノードからメンバーデータ構造体を取り出す
         メンバーに関する情報を印字
         memNode := memNode.next
     }
     famNode := famNode.next
 }
外部収納を使った場合、データ構造体を取り出して型変換するという余分なステップが必要になる。これは、2種類の連結リストが同じデータ構造（node）を使っているためである。
あるメンバーがいくつの家族に属することができるかがコンパイル時に分かっている場合、内部収納の方が適している。しかし、1人のメンバーが任意の個数の家族に属する可能性がある場合、かつその数が実行時にならないと分からない場合、外部収納にする必要がある。
検索の高速化

連結リストで特定の要素を探す場合、たとえそれがソート済みであっても一般に O(n) の時間を要する（線型探索）。これは連結リストの重大な欠点である。これを改善するいくつかの方法が存在する。
ソートされていないリストでは、平均検索時間を短縮する単純なヒューリスティックとして "Move To Front" と呼ばれる手法がある。これは、1度検索して見つかったノードをリストの先頭に移動させるという方式である。これは一種の簡単なキャッシュ構成法であり、最も後に検索したノードを再度検索する場合に高速化される。
もう1つの一般的な手法は、より効率的な外部のデータ構造を使ってノードにインデックスを付けるというものである。例えば、赤黒木やハッシュテーブルを構築し、その要素が連結リストの各ノードへの参照を持つようにする。1つのリストに対して、そのようなインデックスを複数構築できる。この手法の欠点は、ノードの追加や削除の度にインデックス側の更新が必要となる点である。少なくともインデックスを再利用する前に更新が必要である。
関連するデータ構造

スタックとキューは連結リストを使って実装されることが多く、単にリストで許されている操作を制限するだけでよい。
スキップリストは、ポインタが階層化された連結リストであり、多数のノードを高速に飛ばして検索可能である。
二分木は、データ部も同じような連結リストへのリンクになっている連結リストと見なすこともできる。各ノードは2つのノードへのリンクになっており、それぞれが部分木の頂点を指している。
unrolled linked list は、各ノードに配列が置かれている形式の連結リストである。主に参照の局所性を高め、性能を向上させる目的で使われる。
ハッシュテーブルは、ハッシュ値が衝突しているデータを保持する際に連結リストの構造を使うことがある。
特許問題

Linked List Patented in 2006 (Slashdot)
リンクトリストが2006年に特許承認 (スラッシュドット ジャパン)
ライオンハート (ケイト・ブッシュのアルバム)

『ライオンハート』（原題：Lionheart）は、1978年11月13日に発売されたケイト・ブッシュの2枚目のアルバムである。
概要

デビュー・アルバム『天使と小悪魔』のわずか9か月後に発表されたセカンド・アルバムで、最高位は全英第6位。
プロデュースはアンドリュー・パウエルで、ニースで録音された。
2018年、このアルバムを含む全音源が本人とジェームス・ガスリーによるリマスターで再発売されている。
収録曲

ブルーのシンフォニー - "Symphony in Blue"
ピーターパンを探して - "In Search of Peter Pan"
ワォ - "Wow"
車輪がすべる - "Don't Push Your Foot on the Heartbrake"
ライオン・ハート - "Oh England My Lionheart"
フルハウス - "Fullhouse"
暖かい部屋で - "In the Warm Room"
カシュカの館 - "Kashka From Baghdad"
コーヒーはいかが - "Coffee Homeground"
ハンマー・ホラー - "Hammer Horror"
カッパ・ブックス

カッパ・ブックスは、光文社により、1954年から2005年まで発行された、ソフトカバータイプの新書レーベル。
名称・ロゴ

名称の由来は、日本の想像上の動物である河童（かっぱ）から来ており、「カッパは、いかなる権威にもヘコたれない。非道の圧迫にも屈しない。なんのへのカッパと、自由自在に行動する。その何ものにもとらわれぬ明朗さ。その屈託（くったく）のない闊達（かったつ）さ。裸（はだか）一貫のカッパは、いっさいの虚飾をとりさって、真実を求めてやまない。たえず人びとの心に出没して、共に楽しみ、共に悲しみ、共に怒る。しかも、つねに生活の夢をえがいて、飽（あ）くことを知らない。カッパこそは、私たちの心の友である。」という精神を編集方針としていた。 ホルンを吹いている河童をロゴマークとしていた。
沿革

光文社常務取締役出版局長を務めていた神吉晴夫は、知識人向け教養新書路線とされる先行の岩波新書（1938年創刊）に対して、わかりやすさを重点に置いた、大衆向け教養新書路線の新書を企画し、光文社は1954年（昭和29年）10月に伊藤整の『文学入門』、中村武志の『小説 サラリーマン目白三平』をもって、カッパ・ブックスを創刊した。なお、カッパ・ブックスという名称はペンギン・ブックスに倣ったものであった。当時としては大きい9ポイントの活字で印刷され、また、現在多くの新書で採られている、本の裏表紙に著者の写真と略歴を入れる装丁は、日本の新書で初めての試みであった。
創刊当初は必ずしも順調な出足とは言えない状態であったが、神吉が「創作出版論」と呼ぶ、編集者による企画先行の姿勢と、「カッパの本はみんなヒットする」などのキャッチコピーを使った積極的な広告によって大量生産化を実行し、カッパ・ブックスは日本の第1次新書ブームの主役と呼ばれる存在となっていった。刊行分野は生活実用書を中心としていたが、時にノンフィクションを含むなど、多岐に渡る。1960年代から1970年代の表紙の装丁は田中一光が担当していた。
1959年（昭和34年）5月に総発行部数が1000万部を突破、光文社は、カッパ・ブックスを発展させたシリーズとして、「カッパ・ノベルス」（1959年創刊）・「カッパ・ビジネス」（1963年創刊）・「カッパ・ホームス」（1969年創刊）、「カッパ・サイエンス」（1980年創刊）などを創刊していった。1961年（昭和36年）に出版した岩田一男の『英語に強くなる本』は「パンのように売れる」のキャッチコピーのもと、三ヶ月で100万部以上を売上げて、カッパ・ブックス初のミリオンセラーとなった。
なお、社会学者の加藤秀俊は1962年（昭和37年）に東京新聞の「日本の新書文化」で、「新書の流行で、読書という行為が知識階級だけの特殊な行為でなく、すべての人間の日常行為に組み入れられるようになった」と述べている。
また、その後も1966年にシリーズ第1作目を出版した多湖輝の『頭の体操』や、1966年に出版した五味康祐の『五味マージャン教室』や、1970年に第1作目を出版した後、全4巻のシリーズとなった塩月弥栄子の『冠婚葬祭入門』などのベストセラーを連発し、1972年（昭和47年）には累計部数が1億冊を突破するなど、読者の支持を獲得し、好調な売上げを記録していった。
そうした中、1970年から1977年（昭和52年）にかけて、光文社では「光文社闘争」と呼ばれる激しい労働争議が起こり、カッパ・ブックスの発行も一時中断した。社長となっていた神吉は、批判の中で光文社を退職し、かんき出版を創業した。また、一時カッパ・ブックスの編集長を務めていた伊賀弘三良ら、光文社の役員も退職し、祥伝社を設立、カッパ・ブックスのノウハウを活かした、ノン・ブックシリーズを発刊した。また、多湖輝の『頭の体操』などを担当していた、編集者の柳下要司郎も、光文社を退職し、ごま書房（現在のごま書房新社）の創業に参加した。
1990年代以降は、一時の勢いと比べて衰えを見せるようになっていき、2001年（平成13年）11月に刊行開始した光文社の同じ新書レーベルである光文社新書と入れ替わる形で、カッパ・ブックスは、2005年（平成17年）1月の『頭の体操 四谷大塚ベストセレクション』を最後に、新刊の刊行を停止した。
カッパの本累計発行部数

「カッパ・ブックス」のほか、「カッパ・ノベルス」、「カッパ・ビジネス」、「カッパ・ホームス」、「カッパ・サイエンス」、四六判文芸書などを含めた総発行部数。
1973年3月27日 - 1億200万部（1億部突破）
1983年 - 2億部突破
1989年 - 2億5000万部突破
主なベストセラー

※太字はミリオンセラー。書籍名の多くにサブタイトルが付いているのは、神吉の方針に端を発していた。なお「カッパ・ノベルス」の作品はここから省いている。
望月衛『欲望 - その底にうごめく心理』（1955年）
渡辺一夫『うらなり抄 - おへその微笑』（1955年）
本多顕彰『指導者 - この人びとを見よ』（1955年）
岡本太郎『今日の芸術 - 時代を創造するものは誰か』（1955年）
安田徳太郎『日本人の歴史〈第１〉万葉集の謎』（1955年）
三笠宮崇仁『帝王と墓と民衆 - オリエントのあけぼの』（1956年）
加藤正明『異性ノイローゼ - 歪んだ性行動の心理判断』（1956年）
神吉晴夫編『三光 日本人の中国における戦争犯罪の告白』（1957年）
坂本藤良『経営学入門 - 現代企業はどんな技能を必要とするか』（1958年）
林髞『頭脳 - 才能をひきだす処方箋』（1958年）
安本末子『にあんちゃん - 十歳の少女の日記』（1959年）
藤本正雄『催眠術入門 - あなたも心理操縦ができる』（1959年）
林髞『頭のよくなる本 - 大脳生理学的管理法』（1960年）
川喜田二郎『鳥葬の国 - 秘境ヒマラヤ探検記』（1960年）
岩田一男『英語に強くなる本 - 教室では学べない秘法の公開』（1961年）
南博『記憶術 - 心理学が発見した20のルール』（1961年）
黄小娥『易(えき)入門 - 自分で自分の運命を開く法』（1962年）
浅野八郎『手相術 - 自分で、自分の成功を予知できるか』（1962年）
小池五郎『スタミナのつく本 - 体のリズムに乗る栄養生理学の法』（1962年）
郡司利男『国語笑字典 - カッパ特製』（1963年）
占部都美『危ない会社 - あなたのところも例外ではない』（1963年）※「カッパ・ビジネス」
猪木正文『数式を使わない物理学入門 - アインシュタイン以後の自然探検』（1963年）
三鬼陽之助『悲劇の経営者 - 資本主義に敗北した男の物語』（1964年）※「カッパ・ビジネス」
諸星龍『3分間スピーチ - 一人一人の心に、強烈な感動を』（1964年）
山田宗睦『危険な思想家 戦後民主主義を否定する人びと』（1965年）
澁澤龍彦『快楽主義の哲学 - 現代人の生き甲斐を探求する』（1965年）
後藤弘『バランスシート - 経営者の虚々実々を見破る本』（1965年）※「カッパ・ビジネス」
金子光晴『絶望の精神史 - 体験した「明治百年」の悲惨と残酷』（1965年）
五味康祐『五味マージャン教室 - 運3技7の極意』（1966年）
門馬寛明『西洋占星術 - あなたを支配する宇宙の神秘』（1966年）
野末陳平『姓名判断 - 文字の霊があなたを支配する』（1967年）
多湖輝『頭の体操』シリーズ（1967年 - 2005年）※第4集までミリオンセラー
岩田一男『英単語記憶術 - 語源による必須6000語の征服』（1967年）
佐賀潜『民法入門 - 金と女で失敗しないために』（1968年）※「カッパ・ビジネス」
佐賀潜『刑法入門 - 臭い飯を食わないために』（1968年）※「カッパ・ビジネス」
佐賀潜『労働法入門 - がっぽり給料をもらうために』（1968年）※「カッパ・ビジネス」
佐賀潜『道路交通法入門 - お巡りさんにドヤされないために』（1968年）※「カッパ・ビジネス」
吉岡力『歴史パズル - 人間はどこまで進歩したか』（1968年）
樋口健治『初歩自動車工学 - なぜ動く・なぜ走る・なぜ故障する』（1969年）
塩月弥栄子『冠婚葬祭入門 - いざというとき恥をかかないために』（1970年）※「カッパ・ホームス」
塩月弥栄子『続冠婚葬祭入門 - いざというとき恥をかかないために』（1970年）※「カッパ・ホームス」
石原慎太郎『スパルタ教育 - 強い子どもに育てる本』（1970年）
浜尾実『女の子の躾け方 - やさしい子どもに育てる本』（1972年）
羽仁進『放任主義 - 一人で生きる人間とは』（1972年）
渡辺正『にんにく健康法 - なぜ効く、何に効く、どう食べる』（1973年）※「カッパ・ホームス」
手塚治虫『マンガの描き方 - 似顔絵から長編まで』（1977年）※「カッパ・ホームス」
五味康祐『五味手相教室 - あなたには、どんな幸せが待っているか』（1978年）
森毅『計算のいらない数学入門 - 「できる」から「わかる」へ』（1980年）※「カッパ・サイエンス」
小室直樹『ソビエト帝国の崩壊 - 瀕死のクマが世界であがく』（1980年）※「カッパ・ビジネス」
小室直樹『アメリカの逆襲 - 宿命の対決に日本は勝てるか』（1980年）※「カッパ・ビジネス」
栗本慎一郎『パンツをはいたサル - 人間は、どういう生物か』（1980年）※「カッパ・サイエンス」
加山雄三『この愛いつまでも - 若大将の子育て実戦記』（1981年）※「カッパ・ホームス」
川上哲治『悪の管理学 - かわいい部下を最大限に鍛える』（1981年）※「カッパ・ビジネス」
上野千鶴子『セクシィ・ギャルの大研究 - 女の読み方・読まれ方・読ませ方』（1982年）※「カッパ・サイエンス」
内藤正敏『鬼がつくった国・日本 - 歴史を動かしてきた「闇」の力とは』（1985年）※「カッパ・サイエンス」
阿川弘之『国を思うて何が悪い - 一自由主義者の憤慨録』（1987年）※「カッパ・ホームス」
盛田昭夫・石原慎太郎『「No（ノー）」と言える日本 - 新日米関係の方策（カード）』（1989年）※「カッパ・ホームス」
石原慎太郎・渡部昇一・小川和久『それでも「No（ノー）」と言える日本 - 日米間の根本問題』（1990年）※「カッパ・ホームス」
トーマス・スプレイグ

| トーマス・スプレイグ Thomas Lamison Sprague |
| --- | --- |
 
生誕:  1894年10月2日 オハイオ州ライマ
死没:  1972年9月17日 カリフォルニア州チュラビスタ
所属組織:   アメリカ海軍
軍歴:  1917-1952
最終階級:   海軍中将
戦闘:  第一次世界大戦 第二次世界大戦
テンプレートを表示
トーマス・ラミソン・スプレイグ (Thomas Lamison Sprague, 1894年10月2日 - 1972年9月17日) は、アメリカ合衆国の海軍軍人。最終階級は海軍中将。
生い立ちと初期の経歴

スプレイグはオハイオ州ライマに生まれ、1917年に海軍士官学校を卒業した。クリフトン「ジギー」スプレイグ中将との血縁関係はないが、両名共に海軍士官学校で学び、後に同じクラスを卒業した。
任官後はクリーブランド (USS Cleveland, C-19) に乗艦、1917年6月から1918年4月まで大西洋横断の輸送船団護衛任務に就く。その後短期間、沿岸での任務に従事し、7月にモントゴメリー (USS Montgomery, DD-121) の就役支援に従事した。その後スプレイグは1920年1月から11月までモントゴメリー艦長として艦を指揮した。
戦間期

ペンサコーラ海軍航空基地で飛行訓練を受けた後、スプレイグは1921年から23年までヘンリー・V・バトラー提督の下で勤務する。1926年に戦艦メリーランド (USS Maryland, BB-46) に第1偵察戦隊と共に勤務となり、1928年にサンディエゴ海軍航空基地勤務となる。
1931年から36年の間にスプレイグは第6偵察戦隊指揮官、航空エンジン研究所所長としてフィラデルフィアの海軍航空工廠に勤務し、続いて空母サラトガ (USS Saratoga, CV-3) の航空士官として勤務した後、1937年から40年までペンサコーラの海軍航空訓練施設の司令官を務めた。
第二次世界大戦

空母レンジャー (USS Ranger, CV-4) の副長として大西洋での中立パトロールに1年間従事した後、スプレイグは護衛空母チャージャー (USS Charger, CVE-30) の就役準備に従事し、就役後は艦長として1942年2月から12月までチェサピーク湾で飛行士の訓練を行った。
1943年1月から6月までの陸上勤務の後、8月にイントレピッド (USS Intrepid, CV-11) 艦長に着任し、1944年初頭にはトラック諸島およびマーシャル諸島の攻撃に参加した。
スプレイグは6月に海軍少将に昇進し、第22空母部隊を指揮し7月から8月にかけてグアムを、9月にはモロタイ島を攻撃した。レイテ沖海戦では第77.4任務群および第77.4.1任務集団（通称「タフィ1」）を指揮し、1945年4月から6月の沖縄戦では第3空母部隊を指揮した。その後は第38.1任務群を終戦まで指揮する。
戦後

戦後の1946年、スプレイグは海軍人事局副局長を命じられ、その後局長となる。1949年8月には中将に昇進した。10月に太平洋艦隊航空軍の指揮官を命じられ、1952年4月に退役するまで同職を務めた。退役後の1956年、フィリピン政府と駐比アメリカ空軍基地の交渉を行うため短期間現役復帰した。
スプレイグは1972年9月17日にカリフォルニア州チュラビスタで死去した。
コロラド大学ボルダー校

| コロラド大学ボルダー校 |
| --- | --- |
 
 
大学設置/創立:  1876年
学校種別:  州立
設置者:  The Regents of the University of Colorado
本部所在地:  米国コロラド州ボルダー市
学生数:  37,437
学部:  教養学部 工学･応用科学部 理学部 経営学部 経済学部 政治学部 法科大学院 MBA 等々
ウェブサイト:  http://www.colorado.edu/
テンプレートを表示
コロラド大学ボルダー校（英語: University of Colorado at Boulder）は、米国コロラド州ボルダー市に本部を置くアメリカ合衆国の州立大学。1876年創立、1876年大学設置。
ブロードウェイ通り側の入口
概要

コロラド大学ボルダー校 (University of Colorado at Boulder, CU-Boulder、CU-ボルダー)は、州都デンバー（人口約60万人）から北西約40キロに位置するアメリカ合衆国コロラド州ボルダー市に設置された1876年創立の大規模研究型州立総合大学である。
コロラド大学ボルダー校はコロラド大学システムに属する3校の旗艦校である。カリフォルニア大学群の略称がUCなのでコロラド大学はCUを用いる。フォートコリンズにあるコロラド州立大学（Colorado State University; CSU）とは別組織である。但し、大学設置自体はコロラド州立大学の方が6年早い。
教養学部、工学･応用科学部、理学部、建築学部、教育学部、情報学部、音楽学部、経済学部、法科大学院など150の学位課程に約3400専攻領域が設けられており、ボルダー校だけでも2019年秋時点で3万5千人余りの学生が在籍している（学部課程29,624人、大学院課程5,904人）。他にコロラド大学システムに属するのは、医学部、薬学部、教育大学院、公共政策大学院などを有するデンバー校（CU-Denver & Anschutz; 学生数約19,000名）とコロラドスプリングス校（CUCS; 学生数約12,000人）である。すなわちコロラド大学システムに属する学生総数は約66,000人に及ぶ。
アメリカ西部〜南部の州は東海岸諸州に比べて面積が広く、コロラド州だけで北海道を除く日本の総面積に匹敵する。このためコロラド大学のように旗艦校を置いて別キャンパスを付属、あるいは独立運営させることがある（アリゾナ大学群やカリフォルニア大学群、テキサス大学群、フロリダ大学群など）。また、ボルダー校はロッキー山脈の東山麓に位置し、特に景色が美しい大学としても知られている。ボルダーは市街地の拡大抑制政策をとってきたため、州都デンバーと比較して住居費が高い。デンバーからの通勤ラッシュを緩和するため、段階的に市街地拡大抑制政策を緩めている。
コロラド大学ボルダー校は、東部のハーバード大学やMIT、西部のカリフォルニア大学バークレー校、スタンフォード大学を始めとする全米６０校とカナダ２校（トロント大学、マギル大学）の名門大学で構成するアメリカ大学協会のメンバーであり、高水準の研究型教育を提供する最重要公立大学の一つとして位置付けられている。アメリカ東部の名門私立大学群（アイビーリーグ）８校に対して、ワシントン大学（シアトル）、アリゾナ大学ツーソン校、カリフォルニア大学群６校と共にパブリック・アイビー西地区９校の一つである。
モンゴル国大統領ツァヒアギーン・エルベグドルジ、リベリア共和国大統領エレン・ジョンソン・サーリーフ（いずれも平成27年7月の時点において現職）のほか、連邦最高裁判所判事、連邦議会議員を数多く輩出している。
概要 > 博物館

コロラド大学自然史博物館（University of Colorado Museum of Natural History）はロッキー山脈地帯で最も大きな自然史博物館の1つである。
主に人類学、植物学、古生物学、昆虫学、動物学の領域を扱っている。一般向けの展示施設は入館料無料で見学ができる。
学問

コロラド大学ボルダー校は幾つかの学部・学科によって構成されているが、教養学部（the College of Arts and Sciences）が学生数規模は最も大きく、工学･応用科学部（the College of Engineering and Applied Sciences）、建築学部、教育学部、情報学部、音楽部、経済学部、法科大学院などがある。そのほとんどの学部において研究型大学院を備えている。また、学部課程では150の学科から約3400のコースを選ぶことができる。
2019年12月時点でノーベル生理学・医学賞受賞者2名、化学賞2名、物理学賞7名、平和賞2名の計13名を輩出している。デービッド・ワインランド（2012年物理学賞）、ジョン・ホール（2005年物理学賞）、エリック・コーネル（2001年物理学賞）、カール・ワイマン（2001年物理学賞）、トーマス・チェック（1989年化学賞）が現職教授として在職している。CRISPR/Cas9に関する研究で、2020年にノーベル化学賞を受賞したジェニファー･ダウドナ（現カリフォルニア大学バークレー校）はトーマス・チェックの下でポスドクを経験している。
工学部では航空宇宙工学が有名で国際宇宙ステーションの開発に携わっており、これまで20人の宇宙飛行士を輩出している。日本人初の宇宙飛行士であるエリソン・オニヅカ（チャレンジャー号爆発事故で殉職）や、トム･ハンクス主演の映画「アポロ13」で知られるアポロ13号に搭乗した3名のうち、ジャック・スワイガートは卒業生である。東キャンパスには大気宇宙物理学研究所やアメリカ国立太陽天文台などもあり、この分野においては超名門校である。
ランキング > 主要世界大学ランキング

THE世界大学ランキング: 第100位（2018年度）
QS世界大学ランキング: 第182位（2018年度）
世界大学学術ランキング: 第43位（2017年度）
図書館北側CWUR世界大学ランキング: 第69位（2017年度）
ランキング > U.S.News & World Report大学ランキング

Varsity Lake世界大学ランキング: 第44位（2018年度）
全米大学総合ランキング：第90位（2018年度）
全米州立大学ランキング: 第39位（2018年度）
US NEWS主要研究課程ランキング(2019)
工学部: 第26位（航空宇宙(12), 環境(17), 化学(17), 土木(23), 電気(35), 機械(35), 計算機(36), 材料(46)）
計算機科学部: 第40位
物理学部: 第14位
化学部: 第24位
生物学部: 第33位
数学部: 第47位
経済学部: 第50位
政治学部: 第40位
英語学部: 第35位
歴史学部: 第38位
心理学部: 第26位
社会学部: 第42位
地球科学部: 第19位
聴能学部: 第17位
ランキング > U.S.News & World Report大学ランキング > 専門大学院

経営学大学院(MBA): 第65位
法科大学院: 第46位
教育学大学院：第29位
校内バス

校内バスは the Buff Busと呼ばれ、校内から学校寮、ボルダーの市内を走るバスが利用できる。
校内バス > ナイト・ライド（Night Ride）

ナイト・ライド(Night Ride)とは、1985年から行われるようになったサービス。学生、教授等の大学関係者向けの無料の夜間エスコートサービスが利用できる。
スポーツ

→詳細は「コロラド・バッファローズ」を参照
コロラド大学のスポーツ・チームは、バッファローズ(Buffaloes)と呼ばれ、NCAAのディビジョン I（フットボールはディビジョンI-A）のパシフィック12カンファレンスに2011年より所属している。それ以前はビッグ12カンファレンスに所属していた。なお2024年からはビッグ12に復帰する予定。
ボルダーの標高は海抜1650m前後であり、高所トレーニングのメッカとしても知られる。シドニー五輪マラソン金メダリストの高橋尚子やミュンヘン五輪マラソン金メダリストのフランク･ショーターは長期間この町に滞在していた。コロラド大学ボルダー校は、これまで陸上長距離走やクロスカントリースキー、自転車競技などの持久系スポーツで多くの五輪選手を輩出している。
姉妹校

千葉工業大学（Chiba Institute of Technology）
著名な出身者

アラン・ケイ：計算機科学者
スティーブ・ウォズニアック：Apple共同創業者
エレン・ジョンソン・サーリーフ：現リベリア共和国大統領
シドニー・アルトマン：生物学者(1989年のノーベル化学賞受賞)
リチャード・ファルド：リーマン・ブラザーズ現会長兼CEO
ロバート・レッドフォード：俳優（中退）
ハーバート・クレーマー：物理学者
デイヴ・グルーシン：ミュージシャン
グレン・ミラー：ミュージシャン
クリストファー・メローニ（Christopher Meloni）：俳優
トレイ・パーカー：「サウス・パーク」のクリエイター
マット・ストーン：「サウス・パーク」のクリエイター
ダルトン・トランボ：脚本家
ヘイル・アーウィン：プロゴルファー
タイラー・ハミルトン（Tyler Hamilton）：自転車選手
ジェームズ・ネイスミス：バスケットボールの考案者
チャンシー・ビラップス：バスケットボール選手
フィリップ・ベイリー：ミュージシャン
稲田修一：早稲田大学教授
1910年頃に建てられたMacky Auditoriumは主に音楽学科のコンサートホールとして使われている
メモリアルホール付近
キャンパスから見たロッキー山脈
工学部
ジョン・テイラー (ニューヨーク州知事)

ジョン・テイラー
ジョン・テイラー （John Tayler, 1742年7月4日 - 1829年3月19日）は、アメリカ合衆国の実業家、政治家。長期間にわたってニューヨーク州副知事を務め、1817年に数ヶ月だけニューヨーク州知事を務めた。またニューヨーク州議会の上院および下院の両方の議員も務めた。
生涯

1742年、テイラーはニューヨーク市において誕生した。テイラーはイギリスの軍用地において商人として青年期を過ごした後、ニューヨーク州北部において農業経営と小売業を開始した。テイラーは1764年にマルガリータ・ヴァン・ヴォールクンバーグと結婚し、事業で大きな成功を収めた。テイラーはいくつもの企業を設立・買収し、大規模な不動産取引を行った。
やがてアメリカ独立戦争が勃発すると、テイラーの農場近くはサラトガの戦いの舞台となった。テイラーは大陸軍に食料や衣類を供給し、やがて独立を果たしたアメリカ合衆国から公共事業を引き受けるようになった。
テイラーは新設されたニューヨーク州議会にオールバニ郡の代表として参加し、3度にわたって下院議員を務めた。1度目は1777年から1779年まで、2度目は1780年から1781年まで、そして3度目は1785年から1787年までであった。その後1793年にテイラーはオールバニの法務官（いわゆる助役）に指名され、1797年には民事訴訟裁判所の裁判官に指名された。そしてテイラーは1802年から1813年までニューヨーク州上院議員を務め、1811年には上院議長も務めた。
1811年、テイラーはニューヨーク州副知事に選出され、また1813年にも再選された。テイラーはその後1822年まで、ダニエル・トンプキンズとデウィット・クリントンの下で同職を務めた。トンプキンズがジェームズ・モンローによりアメリカ合衆国副大統領に指名され辞職をしてから、クリントンが知事として選出されるまでの約4ヵ月間の知事不在期間には、知事代理も務めた。
1829年、テイラーはニューヨーク州オールバニにおいて死去した。テイラーの遺体は同州メナンズのオールバニ田園墓地に埋葬された。
クロトゲアリ

クロトゲアリ（黒棘蟻、Polyrhachis dives）は、ハチ目（膜翅目）アリ科トゲアリ属マルトゲアリ亜属に属する、アリの一種である。
形態

働きアリの体長は5-6mm。トゲアリの働きアリは胸部が鮮やかな赤褐色をしているが、本種はほぼ全身黒色である。頭部と腹部には淡黄色の細かい毛で覆われる。また棘の配置もトゲアリと異なり、中胸のそれが本種には無い。
生態 > 分布

沖縄本島以南の南西諸島に分布するが、近年移入個体と思われるものが本土部でも確認されている。国外では台湾、中国、フィリピン、ニューギニア、東南アジア。
生態 > 食性

カイガラムシやアブラムシの分泌する甘露の他、花蜜、イチゴ等の果実をおもな餌とし、他の昆虫を食べることはないとされている。
生息地沖縄では、サトウキビ畑に棲むカイガラムシが本種の餌の供給源となっている例が観察されている。
生態 > 営巣

トゲアリが一次的寄生で営巣を開始するのに対し、本種はそれと全く異なる営巣を行う。彼らの営巣生態はむしろツムギアリと相似するもので、樹上や草むらに生葉や枯葉による巣を建築し、葉と葉の接着は終齢幼虫の吐き出す糸によっておこなわれる。
クロトゲアリのコロニーは多雌性である。コロニー内に新女王が生ずると、彼女たちは１つのコロニーを構成したままそれぞれ“分家”的な樹上巣を近隣に持つようになる。
巣内にはしばしば小型の蛾の一種Batrachedra sp.の幼虫が寄生し、本種の幼虫を捕食する天敵となっている。
野生状態での本種のコロニーは、毎年晩秋までに滅亡する。これはコロニー自体が寿命を迎えたわけではなく、生息地の台風シーズンによって巣がことごとく壊滅してしまうからである。飼育下ではそのような災難に見舞われないため、コロニーが季節を通じて存続する。