(STL) STL 1 (deta structure) (algorithm) (deta structure) 2 STL STL (Standard Template Library) 2.1 STL STL ( ) vector<int> x; for(int i = 0; i < 10;

Similar documents
3.1 stdio.h iostream List.2 using namespace std C printf ( ) %d %f %s %d C++ cout cout List.2 Hello World! cout << float a = 1.2f; int b = 3; cout <<

cpp2.dvi

1.3 ( ) ( ) C

1 C STL(1) C C C libc C C C++ STL(Standard Template Library ) libc libc C++ C STL libc STL iostream Algorithm libc STL string vector l

新版明解C言語 実践編

cpp1.dvi

Qt (Generic Containers) Java STL <QtAlgorithms> STL (Generic Algorithms) QList<T>, QLinkedList<T>, QVector<T>, QStack<T>, QQueue<T> QMap<Key,

C 言語経験者のための C++ 入門

新・明解C言語 実践編

untitled

cpp4.dvi

C のコード例 (Z80 と同機能 ) int main(void) { int i,sum=0; for (i=1; i<=10; i++) sum=sum + i; printf ("sum=%d n",sum); 2

解きながら学ぶC++入門編

4-3- 基 C++ に関する知識 オープンソースシステムのソースを解読する上で C++ の知識は必須であるといえる 本カリキュラムでは まずオブジェクト指向に関する Ⅰ. 概要理解を深め クラスの扱い方について学習し STL を使用してアルゴリズムとデータ構造を実装する方法を学習する Ⅱ. 対象専

design_pattern.key

r07.dvi

ohp07.dvi

ソフトゼミC 第二回 C++の基礎

基礎プログラミング2015

C++0x

programmingII2019-v01

C , C++ C C++ C++ C cpprefjp - C++ 1 C CUI 2.1 donothing.cpp 1

新版 明解C++入門編

スライド 1

解きながら学ぶC++入門編

1-4 int a; std::cin >> a; std::cout << "a = " << a << std::endl; C++( 1-4 ) stdio.h iostream iostream.h C++ include.h 1-4 scanf() std::cin >>

1 CUI CUI CUI 1.1 cout cin redirect.cpp #i n c l u d e <s t r i n g > 3 using namespace std ; 5 6 i n t main ( void ) 7 { 8 s t r i n g s ; 10 c

Condition DAQ condition condition 2 3 XML key value

解きながら学ぶJava入門編

double 2 std::cin, std::cout 1.2 C fopen() fclose() C++ std::fstream 1-3 #include <fstream> std::fstream fout; int a = 123; fout.open( "data.t


Java演習(4) -- 変数と型 --

DiMP Users Manual Yuichi Tazaki

C言語によるアルゴリズムとデータ構造

Green with White Lines

基礎プログラミング2015

TopLink å SampleClient.java... 5 Ò readallsample() querysample() cachesample() Ç..

XMPによる並列化実装2

Slide 1

PowerPoint プレゼンテーション - 物理学情報処理演習

( ) ( ) 30 ( ) 27 [1] p LIFO(last in first out, ) (push) (pup) 1

基礎プログラミング2015

r03.dvi

ohp03.dvi

コンパイラ演習 第 7 回

untitled

-2-


明解Javaによるアルゴリズムとデータ構造

mnal_HDR4ex_5ex.pdf

untitled

SystemC言語概論

日本外傷歯学会認定医(平成24年11月30日付) H

19 3!! (+) (>) (++) (+=) for while 3.1!! (20, 20) (1)(Blocks1.java) import javax.swing.japplet; import java.awt.graphics;

2 ColorSpace DepthSpace CameraSpace Kinect V2 Kinect V2 BOdyIndex 3. NtKinect Kinect V2 C++ NtKinect [4] NtKinect = Kinect SDK + + STL(C++) + OpenCV +

問題 01 水道料金を節約しよう 問題のポイント問題文で述べられた仕様を理解し その通りに動作するプログラムを記述できるかを問う問題です 変数 入出力 四則演算に加え 条件分岐や繰り返し処理についての知識が必要です 問題の解き方いくつかのアルゴリズムが考えられますが w が 100 以下と小さい値な

プログラム


1 1.1 (JCPRG) 30 Nuclear Reaction Data File (NRDF) PC GSYS2.4 JCPRG GSYS2.4 Java Windows, Linux, Max OS X, FreeBSD GUI PNG, GIF, JPEG X Y GSYS2

Blackfin(ADSP-BF533)活用ハンドブック

Introduction Purpose This training course demonstrates the use of the High-performance Embedded Workshop (HEW), a key tool for developing software for

@okuraofvegetabl

資料

6-1

endo.PDF


2

P6dark P6dark µ-pic 2 µ-pic 2 3 µ-pic µ-pic µ-pic 3 µ-pic (10cm ) MPGC N3035-KA195 No. SN ASD (16ns[C]) (16nsC

1 return main() { main main C 1 戻り値の型 関数名 引数 関数ブロックをあらわす中括弧 main() 関数の定義 int main(void){ printf("hello World!!\n"); return 0; 戻り値 1: main() 2.2 C main

C C UNIX C ( ) 4 1 HTML 1


PowerPoint プレゼンテーション - 物理学情報処理演習

2017_Eishin_Style_H01

81

‚æ4›ñ

PowerPoint プレゼンテーション - 物理学情報処理演習

ALG ppt

/ SCHEDULE /06/07(Tue) / Basic of Programming /06/09(Thu) / Fundamental structures /06/14(Tue) / Memory Management /06/1

やさしいJavaプログラミング -Great Ideas for Java Programming サンプルPDF

1 Java Java GUI , 2 2 jlabel1 jlabel2 jlabel3 jtextfield1 jtextfield2 jtextfield3 jbutton1 jtextfield1 jtextfield2 jtextfield3



untitled

修士論文

joho12.ppt

C# ++ MASA C# ( ) XNA 1.1 C# ( ) VisualStuio XNA 4.0 VisualStuio XNA 3.1 * * *3 2.1 VisualStuio Windows ( TextGam

r08.dvi

PowerPoint プレゼンテーション - 物理学情報処理演習

text_08.dvi

RHEA key

Microsoft PowerPoint - C++_第1回.pptx

lexex.dvi

とても使いやすい Boost の serialization

@okuraofvegetabl

スライド 1

Boo Boo 2 Boo 2.NET Framework SDK 2 Subversion 2 2 Java 4 NAnt 5 Boo 5 5 Boo if 11 for 11 range 12 break continue 13 pass

Programming-C-9.key

[1] #include<stdio.h> main() { printf("hello, world."); return 0; } (G1) int long int float ± ±

920P-1

Transcription:

(STL) STL 1 (deta structure) (algorithm) (deta structure) 2 STL STL (Standard Template Library) 2.1 STL STL ( ) vector<int> x; for(int i = 0; i < 10; ++i) x.push_back(i); vector STL <> x.push_back(i) STL 2.1 C++( ) Vec3 float class Vec3 private: float x, y, z;... ; 1

double long double template<class Type> class Vec3 private: Type x, y, z;... ; Vec3<double> v; x,y,z double 3 vector STL vector vector vector<double> b; vector<triangle> c; 3 vector List.1 2

List.1 #include <iostream> #include <vector> using namespace std; int main(void) // vector<int> b(5, 1); // vector<int> c(b); // int i, n; cout << "n : " << endl; cin >> n; for(i = 0; i < n; ++i) a.push back(i); for(i = 0; i < n; ++i) cout << "a[" << i << "] = " << a[i] << endl; vector List.1 push_back vector<int> a push_back vector push_back insert new delete vector List.1 n n : 5 a[0] = 0 a[1] = 1 a[2] = 2 a[3] = 3 a[4] = 4 3.1 vector int* pa; 3

int i; for(i = 0; i < 50000; ++i) a.push_back(i); pa = &a[3]; for(i = 50000; i < 100000; ++i) a.push_back(i); cout << *pa << endl; a[3] pa vector vector reserve resize List.2 List.2 capacity size size int t[10]; 10 capacity List.2 push_back 0 a size : 1 capacity : 1 1 a size : 2 capacity : 2 2 a size : 3 capacity : 3 3 a size : 4 capacity : 4 4 a size : 5 capacity : 6 5 a size : 6 capacity : 6 6 a size : 7 capacity : 9 7 a size : 8 capacity : 9 8 a size : 9 capacity : 9 9 a size : 10 capacity : 13 reserve 0 a size : 1 capacity : 10 1 a size : 2 capacity : 10 2 a size : 3 capacity : 10 3 a size : 4 capacity : 10 4 a size : 5 capacity : 10 5 a size : 6 capacity : 10 6 a size : 7 capacity : 10 7 a size : 8 capacity : 10 8 a size : 9 capacity : 10 9 a size : 10 capacity : 10 resize 0 a size : 10 capacity : 10 1 a size : 10 capacity : 10 2 a size : 10 capacity : 10 3 a size : 10 capacity : 10 4 a size : 10 capacity : 10 4

5 a size : 10 capacity : 10 6 a size : 10 capacity : 10 7 a size : 10 capacity : 10 8 a size : 10 capacity : 10 9 a size : 10 capacity : 10 push_back size capacity push_back reserve reserve (reserve: ) 10 reserve(10) reserve push_back resize resize resize vector<int> v; v.resize(10, 0);(int 10 0 ) 5

List.2 #include <iostream> #include <vector> using namespace std; int main(void) int i, n; cout << "n : "; cin >> n; cout << "push back" << endl; for(i = 0; i < n; ++i) a.push back(i); cout << i << " a size : " << (int)a.size(); cout << " capacity : " << (int)a.capacity() << endl; a.clear(); cout << "reserve" << endl; a.reserve(n); for(i = 0; i < n; ++i) a.push back(i); cout << i << " a size : " << (int)a.size(); cout << " capacity : " << (int)a.capacity() << endl; a.clear(); cout << "resize" << endl; a.resize(n); for(i = 0; i < n; ++i) a[i] = i; cout << i << " a size : " << (int)a.size(); cout << " capacity : " << (int)a.capacity() << endl; return 0; 6

3.2 2 1 [] 2 at() at( ) [] [] at() at() out_of_range List.3 try-catch try catch List.3 error : 10 List.3 #include <iostream> #include <vector> using namespace std; int main(void) int i, n; cout << "n : "; cin >> n; a.resize(n); try for(i = 0; i < n+10; ++i) a.at(i) = i; catch(out of range err) cout << "error : " << i; cout << " " << endl; return 0; 7

4 STL 3 ( ) 4.1 vector (container) vector deque( ) list( ) STL vector : deque : list : queue, stack : map : set : 4.2 (iterator, ) * vector list iterator : input_iterator : output_iterator : forward_iterator : bidirectional_iterator : random_access_iterator : const_iterator : const 8

iterator iterator const_iterator List.4 List.4 #include <iostream> #include <vector> using namespace std; int main(void) vector<int>::iterator pa; int i, n; cout << "n : "; cin >> n; a.resize(n); // // pa = a.begin(); i = 0; while(pa!= a.end()) pa = i; pa++; i++; // for(pa = a.begin(); pa!= a.end(); ++pa) cout << pa << " "; return 0; begin() end() 1 while(pa!= a.end()) ( end()-1 ) n : 5 0 1 2 3 4 4.3 (algorithm) sort List.5 9

n : 10 0 56 19 80 58 47 35 89 82 74 0 19 35 47 56 58 74 80 82 89 10

List.5 #include <iostream> #include <vector> #include <algorithm> #include <stdlib.h> using namespace std; // inline int nrand(int n) return (int)(rand()/(1.0f+rand MAX) n); int main(void) vector<int>::iterator pa; int i, n; cout << "n : "; cin >> n; // // // a.resize(n); for(i = 0; i < n; ++i) a[i] = nrand(100); for(pa = a.begin(); pa!= a.end(); ++pa) cout << pa << " "; cout << endl; // sort(a.begin(), a.end()); for(pa = a.begin(); pa!= a.end(); ++pa) cout << pa << " "; cout << endl; return 0; 11