見出し画像

C言語教室 第27回 いろいろなソート(続)(回答提出)(2)

こちらの記事の2回目の回答です。


課題

1.整数と文字列を持つ構造体のリストを用意して、整数での並べかえと文字列での並べかえを、それぞれ昇順でマージソートする関数を書きなさい。

2.文字列(ポインタの)配列をマージソートする関数を書きなさい。

前回は(既に1ヶ月くらい前になりますが)、課題1を提出しました。
今回は、課題2です。

前回のリストをアレンジすればいいのだけど、リストと違って文字列配列は繋ぎかえが容易ではない。

(1)いったん別の配列にマージして、
(2)マージが完了したら元の配列にコピーして戻す

という手順を取らざるを得ない・・・かな。

ソースコード

#include <stdio.h>
#include <stdlib.h>

char* name_of_NobelFysik[];

void print_strings(char* str[])
{
	int i = 0;
	while (1)
	{
		if (str[i] == NULL) { break; }

		printf("%s\n", str[i]);
		i++;
	}
}

typedef int (*SortCompare)(char* str1, char* str2);
int sort_normal(char* str1, char* str2){
   	int cmp = strcmp(str1, str2);
	if (cmp == 0) {
		return 0;
	}

	if (cmp < 0) {
		return -1;

	} else {
		return 1;
	}
}

int sort_reverse(char* str1, char* str2){
   	int cmp = strcmp(str1, str2);
	if (cmp == 0) {
		return 0;
	}

	if (cmp < 0) {
		return 1;

	} else {
		return -1;
	}
}

void merge_string(
		char* str1[], int cnt1, 
		char* str2[], int cnt2, 
		SortCompare cmp) {

	char**const merge = malloc(sizeof(char*) * (cnt1 + cnt2));
	int i1 = 0;
	int i2 = 0;
	int cnt = 0;
	while (1) {
    	if ((cnt1 <= i1) && (cnt2 <= i2)) {
			break;
		}

		if (cnt1 <= i1) {
			merge[cnt] = str2[i2];
			i2++;
			cnt++;
			continue;
		}

		if (cnt2 <= i2) {
			merge[cnt] = str1[i1];
			i1++;
			cnt++;
			continue;
		}

    	if (cmp(str1[i1], str2[i2]) < 0) {
			merge[cnt] = str1[i1];
			i1++;
			cnt++;
			continue;

    	} else {
			merge[cnt] = str2[i2];
			i2++;
			cnt++;
			continue;
    	}
	}

	memcpy(str1, merge, sizeof(char*) * cnt);

	free(merge);

    return;
}

void mergeSort(char* str[], int cnt, SortCompare cmp) {
	if (cnt == 1) {
        return;
    }

	/* 半分に分割する */
	const int left  = cnt / 2;
	const int right = cnt - left;

	/* 再帰呼出 */
	/* 左半分と右半分をそれぞれマージソートする */
    mergeSort(&str[0],    left,  cmp);
    mergeSort(&str[left], right, cmp);

	/* 分割したノードをマージする */
    merge_string(&str[0],    left, 
			     &str[left], right, cmp);

    return;
}

int main()
{
	int cnt;
	for (cnt = 0; name_of_NobelFysik[cnt] != NULL; cnt++) {
	}


	print_strings(name_of_NobelFysik);
	printf("#########################################\n");

	mergeSort(name_of_NobelFysik, cnt, sort_normal);
	printf("#########################################\n");

	print_strings(name_of_NobelFysik);
	printf("#########################################\n");

	mergeSort(name_of_NobelFysik, cnt, sort_reverse);
	printf("#########################################\n");

	print_strings(name_of_NobelFysik);
	printf("#########################################\n");
}

char* name_of_NobelFysik[] =
{
	"Wilhelm Conrad Rontgen",
	"Hendrik Antoon Lorentz",
	"Pieter Zeeman",
	"Pierre Curie",
	"Marie Curie",
	"Antoine Henri Becquerel",
	"Lord (John William Strutt)Rayleigh",
	"Philipp Eduard Anton von Lenard",
	"Sir Joseph John Thomson",
	"Albert Abraham Michelson",
	"Gabriel Lippmann",
	"Guglielmo Marconi",
	"Carl Ferdinand Braun",
	"Johannes Diderik van der Waals",
	"Wilhelm Wien",
	"Nils Gustaf Dalen",
	"Heike Kamerlingh Onnes",
	"Max von Laue",
	"Sir William Henry Bragg",
	"William Lawrence Bragg",
	"Charles Glover Barkla",
	"Max Karl Ernst Ludwig Planck",
	"Johannes Stark",
	"Charles-Edouard Guillaume",
	"Albert Einstein",
	"Niels Henrik David Bohr",
	"Robert Andrews Millikan",
	"Karl Manne Georg Siegbahn",
	"James Franck",
	"Gustav Ludwig Hertz",
	"Jean Baptiste Perrin",
	"Arthur Holly Compton",
	"Charles Thomson Rees Wilson",
	"Owen Willans Richardson",
	"Prince Louis-Victor Pierre Raymond de Broglie",
	"Sir Chandrasekhara Venkata Raman",
	"Werner Karl Heisenberg",
	"Paul Adrien Maurice Dirac",
	"Erwin Schrodinger",
	"James Chadwick",
	"Carl David Anderson",
	"Victor Franz Hess",
	"Clinton Joseph Davisson",
	"George Paget Thomson",
	"Enrico Fermi",
	"Ernest Orlando Lawrence",
	"Otto Stern",
	"Isidor Isaac Rabi",
	"Wolfgang Pauli",
	"Percy Williams Bridgman",
	"Sir Edward Victor Appleton",
	"Patrick Maynard Stuart Blackett",
	"Hideki Yukawa",
	"Cecil Frank Powell",
	"Sir John Douglas Cockcroft",
	"Ernest Thomas Sinton Walton",
	"Felix Bloch",
	"Edward Mills Purcell",
	"Frits (Frederik) Zernike",
	"Max Born",
	"Walter Wilhelm Georg Franz Bothe",
	"Willis Eugene Lamb",
	"Polykarp Kusch",
	"William Bradford Shockley",
	"Walter Houser Brattain",
	"John Bardeen",
	"Tsung-Dao Lee",
	"Chen Ning Yang",
	"Pavel Alekseyevich Cherenkov",
	"Il´ja Mikhailovich Frank",
	"Igor Yevgenyevich Tamm",
	"Emilio Gino Segre",
	"Owen Chamberlain",
	"Donald Arthur Glaser",
	"Robert Hofstadter",
	"Rudolf Ludwig Mossbauer",
	"Lev Davidovich Landau",
	"Eugene Paul Wigner",
	"Maria Goeppert-Mayer",
	"J. Hans D. Jensen",
	"Charles Hard Townes",
	"Nicolay Gennadiyevich Basov",
	"Aleksandr Mikhailovich Prokhorov",
	"Julian Schwinger",
	"Richard P. Feynman",
	"Sin-Itiro Tomonaga",
	"Alfred Kastler",
	"Hans Albrecht Bethe",
	"Luis Walter Alvarez",
	"Murray Gell-Mann",
	"Hannes Olof Gosta Alfven",
	"Louis Eugene Felix Neel",
	"Dennis Gabor",
	"John Bardeen",
	"Leon Neil Cooper",
	"John Robert Schrieffer",
	"Leo Esaki",
	"Ivar Giaever",
	"Brian David Josephson",
	"Antony Hewish",
	"Sir Martin Ryle",
	"Aage Niels Bohr",
	"Ben Roy Mottelson",
	"Leo James Rainwater",
	"Burton Richter",
	"Samuel Chao Chung Ting",
	"Philip Warren Anderson",
	"Sir Nevill Francis Mott",
	"John Hasbrouck van Vleck",
	"Arno Allan Penzias",
	"Robert Woodrow Wilson",
	"Pyotr Leonidovich Kapitsa",
	"Steven Weinberg",
	"Sheldon Lee Glashow",
	"Abdus Salam",
	"James Watson Cronin",
	"Val Logsdon Fitch",
	"Nicolaas Bloembergen",
	"Arthur Leonard Schawlow",
	"Kai M. Siegbahn",
	"Kenneth G. Wilson",
	"Subramanyan Chandrasekhar",
	"William Alfred Fowler",
	"Carlo Rubbia",
	"Simon van der Meer",
	"Klaus von Klitzing",
	"Gerd Binnig",
	"Heinrich Rohrer",
	"Ernst Ruska",
	"K. Alexander Muller",
	"J. Georg Bednorz",
	"Leon M. Lederman",
	"Melvin Schwartz",
	"Jack Steinberger",
	"Hans G. Dehmelt",
	"Wolfgang Paul",
	"Norman F. Ramsey",
	"Richard E. Taylor",
	"Jerome I. Friedman",
	"Henry W. Kendall",
	"Pierre-Gilles de Gennes",
	"Georges Charpak",
	"Russell A. Hulse",
	"Joseph H. Taylor Jr.",
	"Clifford G. Shull",
	"Bertram N. Brockhouse",
	"Martin L. Perl",
	"Frederick Reines",
	"David M. Lee",
	"Robert C. Richardson",
	"Douglas D. Osheroff",
	"Steven Chu",
	"Claude Cohen-Tannoudji",
	"William D. Phillips",
	"Horst L. Stormer",
	"Daniel C. Tsui",
	"Robert B. Laughlin",
	"Gerardus 't Hooft",
	"Martinus J.G. Veltman",
	"Jack S. Kilby",
	"Herbert Kroemer",
	"Zhores I. Alferov",
	"Carl E. Wieman",
	"Wolfgang Ketterle",
	"Eric A. Cornell",
	"Masatoshi Koshiba",
	"Raymond Davis Jr.",
	"Riccardo Giacconi",
	"Alexei A. Abrikosov",
	"Vitaly L. Ginzburg",
	"Anthony J. Leggett",
	"David J. Gross",
	"H. David Politzer",
	"Frank Wilczek",
	"Roy J. Glauber",
	"John L. Hall",
	"Theodor W. Haensch",
	"John C. Mather",
	"George F. Smoot",
	"Albert Fert",
	"Peter Grunberg",
	"Yoichiro Nambu",
	"Makoto Kobayashi",
	"Toshihide Masakawa",
	"Charles K. Kao",
	"Willard Boyle",
	"George E. Smith",
	"Andre Geim",
	"Konstantin Novoselov",
	"Saul Perlmutter",
	"Brian Schmidt",
	"Adam Riess",
	NULL,
};

実行結果

Wilhelm Conrad Rontgen
Hendrik Antoon Lorentz
Pieter Zeeman
Pierre Curie
Marie Curie
Antoine Henri Becquerel
Lord (John William Strutt)Rayleigh
Philipp Eduard Anton von Lenard
Sir Joseph John Thomson
Albert Abraham Michelson
Gabriel Lippmann
Guglielmo Marconi
Carl Ferdinand Braun
Johannes Diderik van der Waals
Wilhelm Wien
Nils Gustaf Dalen
Heike Kamerlingh Onnes
Max von Laue
Sir William Henry Bragg
William Lawrence Bragg
Charles Glover Barkla
Max Karl Ernst Ludwig Planck
Johannes Stark
Charles-Edouard Guillaume
Albert Einstein
Niels Henrik David Bohr
Robert Andrews Millikan
Karl Manne Georg Siegbahn
James Franck
Gustav Ludwig Hertz
Jean Baptiste Perrin
Arthur Holly Compton
Charles Thomson Rees Wilson
Owen Willans Richardson
Prince Louis-Victor Pierre Raymond de Broglie
Sir Chandrasekhara Venkata Raman
Werner Karl Heisenberg
Paul Adrien Maurice Dirac
Erwin Schrodinger
James Chadwick
Carl David Anderson
Victor Franz Hess
Clinton Joseph Davisson
George Paget Thomson
Enrico Fermi
Ernest Orlando Lawrence
Otto Stern
Isidor Isaac Rabi
Wolfgang Pauli
Percy Williams Bridgman
Sir Edward Victor Appleton
Patrick Maynard Stuart Blackett
Hideki Yukawa
Cecil Frank Powell
Sir John Douglas Cockcroft
Ernest Thomas Sinton Walton
Felix Bloch
Edward Mills Purcell
Frits (Frederik) Zernike
Max Born
Walter Wilhelm Georg Franz Bothe
Willis Eugene Lamb
Polykarp Kusch
William Bradford Shockley
Walter Houser Brattain
John Bardeen
Tsung-Dao Lee
Chen Ning Yang
Pavel Alekseyevich Cherenkov
Il´ja Mikhailovich Frank
Igor Yevgenyevich Tamm
Emilio Gino Segre
Owen Chamberlain
Donald Arthur Glaser
Robert Hofstadter
Rudolf Ludwig Mossbauer
Lev Davidovich Landau
Eugene Paul Wigner
Maria Goeppert-Mayer
J. Hans D. Jensen
Charles Hard Townes
Nicolay Gennadiyevich Basov
Aleksandr Mikhailovich Prokhorov
Julian Schwinger
Richard P. Feynman
Sin-Itiro Tomonaga
Alfred Kastler
Hans Albrecht Bethe
Luis Walter Alvarez
Murray Gell-Mann
Hannes Olof Gosta Alfven
Louis Eugene Felix Neel
Dennis Gabor
John Bardeen
Leon Neil Cooper
John Robert Schrieffer
Leo Esaki
Ivar Giaever
Brian David Josephson
Antony Hewish
Sir Martin Ryle
Aage Niels Bohr
Ben Roy Mottelson
Leo James Rainwater
Burton Richter
Samuel Chao Chung Ting
Philip Warren Anderson
Sir Nevill Francis Mott
John Hasbrouck van Vleck
Arno Allan Penzias
Robert Woodrow Wilson
Pyotr Leonidovich Kapitsa
Steven Weinberg
Sheldon Lee Glashow
Abdus Salam
James Watson Cronin
Val Logsdon Fitch
Nicolaas Bloembergen
Arthur Leonard Schawlow
Kai M. Siegbahn
Kenneth G. Wilson
Subramanyan Chandrasekhar
William Alfred Fowler
Carlo Rubbia
Simon van der Meer
Klaus von Klitzing
Gerd Binnig
Heinrich Rohrer
Ernst Ruska
K. Alexander Muller
J. Georg Bednorz
Leon M. Lederman
Melvin Schwartz
Jack Steinberger
Hans G. Dehmelt
Wolfgang Paul
Norman F. Ramsey
Richard E. Taylor
Jerome I. Friedman
Henry W. Kendall
Pierre-Gilles de Gennes
Georges Charpak
Russell A. Hulse
Joseph H. Taylor Jr.
Clifford G. Shull
Bertram N. Brockhouse
Martin L. Perl
Frederick Reines
David M. Lee
Robert C. Richardson
Douglas D. Osheroff
Steven Chu
Claude Cohen-Tannoudji
William D. Phillips
Horst L. Stormer
Daniel C. Tsui
Robert B. Laughlin
Gerardus 't Hooft
Martinus J.G. Veltman
Jack S. Kilby
Herbert Kroemer
Zhores I. Alferov
Carl E. Wieman
Wolfgang Ketterle
Eric A. Cornell
Masatoshi Koshiba
Raymond Davis Jr.
Riccardo Giacconi
Alexei A. Abrikosov
Vitaly L. Ginzburg
Anthony J. Leggett
David J. Gross
H. David Politzer
Frank Wilczek
Roy J. Glauber
John L. Hall
Theodor W. Haensch
John C. Mather
George F. Smoot
Albert Fert
Peter Grunberg
Yoichiro Nambu
Makoto Kobayashi
Toshihide Masakawa
Charles K. Kao
Willard Boyle
George E. Smith
Andre Geim
Konstantin Novoselov
Saul Perlmutter
Brian Schmidt
Adam Riess
#########################################
#########################################
Aage Niels Bohr
Abdus Salam
Adam Riess
Albert Abraham Michelson
Albert Einstein
Albert Fert
Aleksandr Mikhailovich Prokhorov
Alexei A. Abrikosov
Alfred Kastler
Andre Geim
Anthony J. Leggett
Antoine Henri Becquerel
Antony Hewish
Arno Allan Penzias
Arthur Holly Compton
Arthur Leonard Schawlow
Ben Roy Mottelson
Bertram N. Brockhouse
Brian David Josephson
Brian Schmidt
Burton Richter
Carl David Anderson
Carl E. Wieman
Carl Ferdinand Braun
Carlo Rubbia
Cecil Frank Powell
Charles Glover Barkla
Charles Hard Townes
Charles K. Kao
Charles Thomson Rees Wilson
Charles-Edouard Guillaume
Chen Ning Yang
Claude Cohen-Tannoudji
Clifford G. Shull
Clinton Joseph Davisson
Daniel C. Tsui
David J. Gross
David M. Lee
Dennis Gabor
Donald Arthur Glaser
Douglas D. Osheroff
Edward Mills Purcell
Emilio Gino Segre
Enrico Fermi
Eric A. Cornell
Ernest Orlando Lawrence
Ernest Thomas Sinton Walton
Ernst Ruska
Erwin Schrodinger
Eugene Paul Wigner
Felix Bloch
Frank Wilczek
Frederick Reines
Frits (Frederik) Zernike
Gabriel Lippmann
George E. Smith
George F. Smoot
George Paget Thomson
Georges Charpak
Gerardus 't Hooft
Gerd Binnig
Guglielmo Marconi
Gustav Ludwig Hertz
H. David Politzer
Hannes Olof Gosta Alfven
Hans Albrecht Bethe
Hans G. Dehmelt
Heike Kamerlingh Onnes
Heinrich Rohrer
Hendrik Antoon Lorentz
Henry W. Kendall
Herbert Kroemer
Hideki Yukawa
Horst L. Stormer
Igor Yevgenyevich Tamm
Il´ja Mikhailovich Frank
Isidor Isaac Rabi
Ivar Giaever
J. Georg Bednorz
J. Hans D. Jensen
Jack S. Kilby
Jack Steinberger
James Chadwick
James Franck
James Watson Cronin
Jean Baptiste Perrin
Jerome I. Friedman
Johannes Diderik van der Waals
Johannes Stark
John Bardeen
John Bardeen
John C. Mather
John Hasbrouck van Vleck
John L. Hall
John Robert Schrieffer
Joseph H. Taylor Jr.
Julian Schwinger
K. Alexander Muller
Kai M. Siegbahn
Karl Manne Georg Siegbahn
Kenneth G. Wilson
Klaus von Klitzing
Konstantin Novoselov
Leo Esaki
Leo James Rainwater
Leon M. Lederman
Leon Neil Cooper
Lev Davidovich Landau
Lord (John William Strutt)Rayleigh
Louis Eugene Felix Neel
Luis Walter Alvarez
Makoto Kobayashi
Maria Goeppert-Mayer
Marie Curie
Martin L. Perl
Martinus J.G. Veltman
Masatoshi Koshiba
Max Born
Max Karl Ernst Ludwig Planck
Max von Laue
Melvin Schwartz
Murray Gell-Mann
Nicolaas Bloembergen
Nicolay Gennadiyevich Basov
Niels Henrik David Bohr
Nils Gustaf Dalen
Norman F. Ramsey
Otto Stern
Owen Chamberlain
Owen Willans Richardson
Patrick Maynard Stuart Blackett
Paul Adrien Maurice Dirac
Pavel Alekseyevich Cherenkov
Percy Williams Bridgman
Peter Grunberg
Philip Warren Anderson
Philipp Eduard Anton von Lenard
Pierre Curie
Pierre-Gilles de Gennes
Pieter Zeeman
Polykarp Kusch
Prince Louis-Victor Pierre Raymond de Broglie
Pyotr Leonidovich Kapitsa
Raymond Davis Jr.
Riccardo Giacconi
Richard E. Taylor
Richard P. Feynman
Robert Andrews Millikan
Robert B. Laughlin
Robert C. Richardson
Robert Hofstadter
Robert Woodrow Wilson
Roy J. Glauber
Rudolf Ludwig Mossbauer
Russell A. Hulse
Samuel Chao Chung Ting
Saul Perlmutter
Sheldon Lee Glashow
Simon van der Meer
Sin-Itiro Tomonaga
Sir Chandrasekhara Venkata Raman
Sir Edward Victor Appleton
Sir John Douglas Cockcroft
Sir Joseph John Thomson
Sir Martin Ryle
Sir Nevill Francis Mott
Sir William Henry Bragg
Steven Chu
Steven Weinberg
Subramanyan Chandrasekhar
Theodor W. Haensch
Toshihide Masakawa
Tsung-Dao Lee
Val Logsdon Fitch
Victor Franz Hess
Vitaly L. Ginzburg
Walter Houser Brattain
Walter Wilhelm Georg Franz Bothe
Werner Karl Heisenberg
Wilhelm Conrad Rontgen
Wilhelm Wien
Willard Boyle
William Alfred Fowler
William Bradford Shockley
William D. Phillips
William Lawrence Bragg
Willis Eugene Lamb
Wolfgang Ketterle
Wolfgang Paul
Wolfgang Pauli
Yoichiro Nambu
Zhores I. Alferov
#########################################
#########################################
Zhores I. Alferov
Yoichiro Nambu
Wolfgang Pauli
Wolfgang Paul
Wolfgang Ketterle
Willis Eugene Lamb
William Lawrence Bragg
William D. Phillips
William Bradford Shockley
William Alfred Fowler
Willard Boyle
Wilhelm Wien
Wilhelm Conrad Rontgen
Werner Karl Heisenberg
Walter Wilhelm Georg Franz Bothe
Walter Houser Brattain
Vitaly L. Ginzburg
Victor Franz Hess
Val Logsdon Fitch
Tsung-Dao Lee
Toshihide Masakawa
Theodor W. Haensch
Subramanyan Chandrasekhar
Steven Weinberg
Steven Chu
Sir William Henry Bragg
Sir Nevill Francis Mott
Sir Martin Ryle
Sir Joseph John Thomson
Sir John Douglas Cockcroft
Sir Edward Victor Appleton
Sir Chandrasekhara Venkata Raman
Sin-Itiro Tomonaga
Simon van der Meer
Sheldon Lee Glashow
Saul Perlmutter
Samuel Chao Chung Ting
Russell A. Hulse
Rudolf Ludwig Mossbauer
Roy J. Glauber
Robert Woodrow Wilson
Robert Hofstadter
Robert C. Richardson
Robert B. Laughlin
Robert Andrews Millikan
Richard P. Feynman
Richard E. Taylor
Riccardo Giacconi
Raymond Davis Jr.
Pyotr Leonidovich Kapitsa
Prince Louis-Victor Pierre Raymond de Broglie
Polykarp Kusch
Pieter Zeeman
Pierre-Gilles de Gennes
Pierre Curie
Philipp Eduard Anton von Lenard
Philip Warren Anderson
Peter Grunberg
Percy Williams Bridgman
Pavel Alekseyevich Cherenkov
Paul Adrien Maurice Dirac
Patrick Maynard Stuart Blackett
Owen Willans Richardson
Owen Chamberlain
Otto Stern
Norman F. Ramsey
Nils Gustaf Dalen
Niels Henrik David Bohr
Nicolay Gennadiyevich Basov
Nicolaas Bloembergen
Murray Gell-Mann
Melvin Schwartz
Max von Laue
Max Karl Ernst Ludwig Planck
Max Born
Masatoshi Koshiba
Martinus J.G. Veltman
Martin L. Perl
Marie Curie
Maria Goeppert-Mayer
Makoto Kobayashi
Luis Walter Alvarez
Louis Eugene Felix Neel
Lord (John William Strutt)Rayleigh
Lev Davidovich Landau
Leon Neil Cooper
Leon M. Lederman
Leo James Rainwater
Leo Esaki
Konstantin Novoselov
Klaus von Klitzing
Kenneth G. Wilson
Karl Manne Georg Siegbahn
Kai M. Siegbahn
K. Alexander Muller
Julian Schwinger
Joseph H. Taylor Jr.
John Robert Schrieffer
John L. Hall
John Hasbrouck van Vleck
John C. Mather
John Bardeen
John Bardeen
Johannes Stark
Johannes Diderik van der Waals
Jerome I. Friedman
Jean Baptiste Perrin
James Watson Cronin
James Franck
James Chadwick
Jack Steinberger
Jack S. Kilby
J. Hans D. Jensen
J. Georg Bednorz
Ivar Giaever
Isidor Isaac Rabi
Il´ja Mikhailovich Frank
Igor Yevgenyevich Tamm
Horst L. Stormer
Hideki Yukawa
Herbert Kroemer
Henry W. Kendall
Hendrik Antoon Lorentz
Heinrich Rohrer
Heike Kamerlingh Onnes
Hans G. Dehmelt
Hans Albrecht Bethe
Hannes Olof Gosta Alfven
H. David Politzer
Gustav Ludwig Hertz
Guglielmo Marconi
Gerd Binnig
Gerardus 't Hooft
Georges Charpak
George Paget Thomson
George F. Smoot
George E. Smith
Gabriel Lippmann
Frits (Frederik) Zernike
Frederick Reines
Frank Wilczek
Felix Bloch
Eugene Paul Wigner
Erwin Schrodinger
Ernst Ruska
Ernest Thomas Sinton Walton
Ernest Orlando Lawrence
Eric A. Cornell
Enrico Fermi
Emilio Gino Segre
Edward Mills Purcell
Douglas D. Osheroff
Donald Arthur Glaser
Dennis Gabor
David M. Lee
David J. Gross
Daniel C. Tsui
Clinton Joseph Davisson
Clifford G. Shull
Claude Cohen-Tannoudji
Chen Ning Yang
Charles-Edouard Guillaume
Charles Thomson Rees Wilson
Charles K. Kao
Charles Hard Townes
Charles Glover Barkla
Cecil Frank Powell
Carlo Rubbia
Carl Ferdinand Braun
Carl E. Wieman
Carl David Anderson
Burton Richter
Brian Schmidt
Brian David Josephson
Bertram N. Brockhouse
Ben Roy Mottelson
Arthur Leonard Schawlow
Arthur Holly Compton
Arno Allan Penzias
Antony Hewish
Antoine Henri Becquerel
Anthony J. Leggett
Andre Geim
Alfred Kastler
Alexei A. Abrikosov
Aleksandr Mikhailovich Prokhorov
Albert Fert
Albert Einstein
Albert Abraham Michelson
Adam Riess
Abdus Salam
Aage Niels Bohr
#########################################

この記事が気に入ったらサポートをしてみませんか?