• ベストアンサー

プログラミング言語?のNode.jsの名前の由来の

プログラミング言語?のNode.jsの名前の由来のグラフ理論のノードとはなんですか? 生みの親であるライアン・ダール氏が登壇した基調講演にて「⁠グラフ理論のノードが由来

質問者が選んだベストアンサー

  • ベストアンサー
  • _kappe_
  • ベストアンサー率68% (1522/2216)
回答No.1

Wikipediaの「グラフ (離散数学)」を読んでください。グラフの頂点のことをノードとも言います。 https://ja.wikipedia.org/wiki/%E3%82%B0%E3%83%A9%E3%83%95_(%E9%9B%A2%E6%95%A3%E6%95%B0%E5%AD%A6) グラフ理論の「グラフ」は、算数で習う棒グラフや円グラフの「グラフ」とは別物です。

okwaveokw
質問者

お礼

ありがとうございます

関連するQ&A

  • JSその物でサーバサイドのプログラミングが出来る?

    JSその物やtypescriptでもサーバサイドのプログラミングが出来ると思って良いのでしょうか? JSその物nodeやexpressは、全く別の言語と思った方が良いのでしょうか? それともJSその物やtypescriptないしはバベルを学べば、同じ文法同じめどっどを使って、ほぼ同じように、トイアワセフォームやショッピングカートなどが作れるようになるのでしょうか? JSその物やtypescriptでも、nodeやexpressと組み合わせれば、 問い合わせフォームやショッピングカートのサーバサイトのWEBアプリが作れるというような情報をその後見つけました。 私が知識不足でJSその物やtyescriptではサーバサイドのプログラミングは出来ず、NodejsやEXPRESSは、 JSその物やtyescriptとは違う言語のように大きく違う物と思っていましたが、下記をみるとあまり変わらず、 クライアントサイドがJSその物やtyescriptで出来れば、NodejsやEXPRESSを同じように作れるのかもしれませんね。 http://okamuuu.hatenablog.com/entry/2016/02/02/165404

  • JavaScriptとWEBプログラミング言語!

    WEBプログラミングの勉強中の者です。 ケースバイケースだと思いますが、 WEBサイトをプログララミングしていく上で、 JavaScriptで作るべき部分と、 PHP、Python、Go言語などのWEBプログラミング言語で作るべき部分について ご意見を頂ければと思います。 ■今日の日付を取得する部分などは、JavaScriptとWEBプログラミング言語では、 サーバー上の実行速度が早い方のプログラミング言語で作るべきでしょうか? 同じくらいの速度の言語ならなるべくJavaScriptで作った方が、後で他の言語で作りなおす時に手間の工数を削減できて良いでしょうか? ■流石にNode.JSなどをの除いてSQLの部分はWEBプログラミング言語以外は実装は難しいので、WEBプログラミング言語で実装するべきなのは理解できています。

  • スケールフリーネットワークをC言語で作成しているのですが。

    現在、C言語でスケールフリーネットワーク(BAモデル)を作成しているのですが、理論はわかるのですが、プログラムが不得意でどのように作っていったらいいのかわかりません。 現在作成途中のソース。 #include<stdio.h> #include<stdlib.h> #include<time.h> #define MAXDEG 500 #define N 30000 //ノードの数 typedef struct node{ int deg; int adj[MAXDEG];//adjacent隣接 double prob;//確率 } Node; /*プロトタイプ宣言*/ add_edge(int id1,int id2); Node NODES[N]; int main(){ ここがどうしていいかわかりません。 } add_edge(int id1,int id2){ Node *node1,*node2; node1 = &NODES[id1]; node2 = &NODES[id2]; node1->adj[node1->deg]=id2; (node1->deg)++; node2->adj[node1->deg]=id1; (node2->deg)++; if(node1->deg >= MAXDEG-1 || node2->deg > MAXDEG-2){ printf("DEG overflow\n"); exit(0); } 関数はこれを使おうと思っていますが、プロセスがわかりません。 よろしくお願いします。

  • nodeでJavaScriptの標準入力

    JavaScriptを勉強中です。実行環境はnode.jsを使用しています。標準出力の代わりにはconsole.log();を使用しているのですが、標準入力の代わりになるようなものは何かないのでしょうか?できれば一行で簡潔に書ける関数がいいです。getsとか。readlineとか。そういうの何かないのでしょうか? 僕が使える言語は、Ruby、Java、C、Python、Common Lispです。 これらの言語を身につけた時と同じように、JavaScriptもまずCUIで色々オモチャを作って、言語仕様を理解したいのです。 JavaScriptは、上記のようなサーバサイド向けの言語とは違い、クライアントサイドのDOM操作が中心で、素直にブラウザで実行して勉強すればいいのはわかっているのですが、prototypeの継承とかprivate変数の使い方とか名前空間についてキチンと理解するにはCUIで遊ばないとダメな気がして、それで標準入出力の代わりになるものが欲しいと思ったのですが、ないのでしょうか? それとも、そもそもまずは言語仕様をCUIで勉強するっていう発想自体がやっぱり間違っているんですかね?簡易CGIサーバでも用意してdocument.writeでブラウザに表示した方がいいのかな。でもブラウザで勉強するにしても、文字列の入力ができないと捗らない気がします。まさか文字列の入力にはフォームでも使えってことなんですかね? 回答よろしくお願いします。

  • node.jsを始めたいが、うまくできない

    http://libro.tuyano.com/index3?id=1116003&page=3 このページを参考にnode.jsを入門したいと思っています。 node.jsのコマンドプロンプトに「cd Desktop\node.js-sample\」 を打ち込んで、「node sampleapp.js」も打ち込んだのですが、Server running!!はでません。 勿論、Desktop\node.js-sample\sampleapp.jsというふうに設置しています。 Desktop\node.js-sampleではなくC:\Users\***\Desktop\node.js-sample も試しましたが、できませんでした。 node.jsのコマンドプロンプトは、 > cd Desktop\node.js-sample\ ・・・ この状態でとまっています。 何がいけないのか教えて下さい。

  • C言語のプログラムを書いたのですが上手く動きません

    C言語の練習問題をプログラミングしたのですが、上手く動きません。 コンパイルはできるのですが、実行すると「Segmentation fault(core dumped)」となります。 問題は、コマンドライン引数としてファイル名を指定したテキストファイルから読み込んだデータを,双方向リストに格納し,順番に表示するというものです。 テキストファイルは 10T5001 C 10T5002 A 10T5003 B 10T5004 C 10T5005 D 10T5006 B 10T5007 A 10T5008 D このように、IDとランクをランクABCDをスペースで区切ったもので、これをランクAから順番に表示させます。 上手く動けば ID: 10T5002, grade: A, ID: 10T5007, grade: A ID: 10T5003, grade: B ID: 10T5006, grade: B ID: 10T5001, grade: C ID: 10T5004, grade: C ID: 10T5005, grade: D ID: 10T5008, grade: D と表示されるはずなんですが・・・ これが僕の書いたプログラムです(長いです。ごめんなさい) #include <stdio.h> #include <stdlib.h> #include <string.h> #define ID_LENGTH 8 /* IDの長さ+ナル文字 */ #define EFOPEN -1 #define ENOMEM -2 #define EINVAL -3 /* 双方向リストのノード */ typedef struct sList /* タグ */ { char id[ID_LENGTH]; /* ID */ char grade; /* ランク*/ struct sList *prev; /* 前のノードのアドレス */ struct sList *next; /* 次のノードのアドレス */ } sNode; /* 双方向リストのノードを作成する関数 makeNewNode() 作成したノードのprevとnextはNULLにする 引数 ・ノードに格納するID ・ノードに格納するランク(A/B/C/D) 戻値 作成したノードの先頭アドレス.メモリの確保に失敗した場合はNULL */ sNode *makeNewNode(char *id, char grade) { sNode *pNewNode; pNewNode = (sNode*)malloc(sizeof(sNode)); if(pNewNode != NULL) { strncpy(pNewNode->id, id, ID_LENGTH-1); pNewNode->grade = grade; pNewNode->prev = NULL; pNewNode->next = NULL; } return pNewNode; } /* 引数で渡された任意のノードの後ろに新しいノードを追加する関数 insertNext() 引数 ・後ろにノードを追加したいノードの先頭アドレス ・追加するノードの先頭アドレス 戻値 なし */ void insertNext(sNode *node, sNode *newNode) { if(node->next == NULL) //一番後ろに追加する場合 { node->next = newNode; newNode->prev = node; } else //まん中に挿入する場合 { newNode->prev = node; newNode->next = node->next; node->next->prev = newNode; node->next = newNode; } } /* main() 引数 int argc コマンドライン引数の数 char *argv[] 与えられたコマンドライン引数の文字列の先頭アドレスの配列 戻値 int 正常終了の時 0 以下の場合は異常終了し,括弧内の値を返す データファイルが開けなかった場合(EFOPEN) makeNewNode()でメモリが確保できなかった場合(ENOMEM) 引数の数が正しくない場合(EINVAL) */ int main(int argc, char *argv[]) { sNode *top; /* リストの先頭ノードのアドレスを保持する変数*/ sNode *new; /* 新しく作成したノードのアドレスを保持する変数 */ sNode *now; /* 現在見ているノードのアドレスを保持する変数 */ FILE *fp; /* データファイルのファイルポインタ */ char id[ID_LENGTH]; /* ファイルから読み込んだIDを一時的に保持する変数 */ char grade; /* ファイルから読み込んだランクを一時的に保持する変数 */ /* コマンドライン引数の数をチェックする 数に過不足があれば,使い方を表示し,異常終了する */ if(argc != 2){ printf("Usage: %s datafilename.\n", argv[0]); return EINVAL; } /* データファイルを読み込み用に開く ファイルが開けなかった場合,エラーメッセージを表示し異常終了する */ fp = fopen(argv[1], "r"); if(NULL == fp){ printf("No such file %s.\n", argv[1]); return EFOPEN; } /* リストの先頭に番兵を立てる */ new = makeNewNode("Banpei", 'A'-1); if (new == NULL){ printf("Error: cannot allocate memory\n"); return ENOMEM; } top = new; /* データファイルから1行ずつデータを読み込み,ランク順にリストに追加していく 既にリストの先頭には番兵ノードがある点に注意 */ while(EOF != fscanf(fp, "%s %c", id, &grade)){ new = makeNewNode(id, grade); if(new == NULL){ printf("Cannot allocate memory.\n"); return EFOPEN; } if(top->next == NULL){ //リストが空の場合 insertNext(top, new); } else{ now = top; while(new->grade > now->grade){ now = now->next; } insertNext(now, new); } } /* できあがったリストの内容を先頭から順に表示する ただし,番兵ノードは表示しない */ now = top; while(now != NULL){ printf("ID: %s, grade: %c\n",now->id, now->grade,); now = now->next; } /* リストのノードを全て(番兵ノードも含む)解放し,リストを空にする */ now = top; while(now->next != NULL){ free(now->prev); now = now->next; } free(now); fclose(fp); return (0); } まだまだ練習中なもので、かなり拙いものだと思いますが、とりあえずまずはプログラム動くようにしたいです。 よろしくお願いします。

  • 事務職でJAVAやPYTHONはどう活かせるの?

    事務職をしています。 エクセルマクロを使って、 レポート作成の自動化などしています。 その他のプログラミング言語をさらに学べば、 もっと業務の効率化ができるのでは、と ドットインストールというサイトで勉強しようと思うのですが http://dotinstall.com/lessons 仕事に役立つ、というタイトルで 下記の教材がありました。 JAVA NODE.JS パイソン これらの言語を習得することで、 事務職という環境の中で、 どういうことができるのか模索中です。 参考になりそうな具体例を、 教えて頂けましたら幸いです。 ありがとうございます。

  • Node.js を学びたいと思っています。分厚い本

    Node.js を学びたいと思っています。分厚い本もいいですが、 イベントにも出てみたいです。 2013年度のNode.jsについてのカンファレンスやセミナーなどのイベントを ご存知ないでしょうか? 勉強会系 以外でもかまいません

  • node.jsのシェル上で

    コンソール上でnodejsを起動してシェルとしてつかった場合 var x="グローバル変数"; console.log(x); //とするとグローバル変数と出力されます。 さらに console.log(this.x); //とするとグローバル変数と出力されます。 そもそもグローバル変数とはトップレベルコードにおけるオブジェクトのプロパティとあります。 ブラウザだと、トップレベルのスコープで定義した変数は alert(window . variable); でアクセスできます。 ですから、nodeコンソール上で xとっ宣言した変数がthis.xとトップオブジェクトとしてアクセスできることはわかったのですが これをコンソールではなく、jsファイルに描いてそれをnodeコマンドで実行した場合 ~$ node test.js といった具合に実行させた場合 どうも、undefindeと表示されてしまうのです。 これは何が原因でundefinedと出力されてしまうのでしょうか?

  • node.jsでバージョンが出て来ないのは・・

    Bracketsをインストールしたら付いてくるnode.jsですが、 node –v と入力してもバージョンが出て来ないのはインストールが不十分?だからですか? サイトによって記述はバラバラですが$マークとか %マークは必要ですか? 僕の場合先頭が「>」とか「・・・」になっています。

専門家に質問してみよう