7.Styles
Use as much as drawings, pictures.animations as possible to accompany or replace texts
Every definition shall be expressed in bold letters
8.Definitions. Terminology, Signs and Symbols
燃烧界和燃烧污染控制领域存在许多混乱的说法,应该避免
任何科学都从概念开始。
术语名辞定语Nomenclature 或List of symbols
Definitions
Assertion
Hypothesis
Terms
Terminology
8.1.Alphabets and Signs
详细规划和说明下列字母的意义和用途:拉丁字母,希腊字母,俄文字母和希伯来字母。
同时要符合国内外学术界的惯例和习惯,又要强调概念清晰,唯一,统一,易于理解和明确。
花体字母
空心体字母
重体字母
斜体字母
8.1.1.Latin
8.1.2.Greek
8.1.3.Hebrew
8.1.4.Russian
8.2.Nomenclature
Nomenclature is a term that applies to either a list of names or terms, or to the system of principles, procedures and terms related to naming—which is the assigning of a word or phrase to a particular object, event, or property. The principles of naming vary from the relatively informal conventions of everyday speech to the internationally-agreed principles, rules and recommendations that govern the formation and use of the specialist terms used in scientific and other disciplines. ... nomenclature concerns itself more with the rules and conventions that are used for the formation of names (wikipedia)
8.3.Notation
We will use to denote the base 2 logarithm instead of or lgn. Base 10 logarithms and natural logarithms will be denoted as n and respectively.
The notation ord r (a) represents the order of a modulo r, which is the smallest positive integer k, such that 1(modr).
The notation (r) will be used to represent Euler’s totient function, which is defined as the number of positive integers less than or equal to r that are relatively prime to r.
The notation f(x) ≡g(x)mod(h(x),p) is used throughout to mean that f(x)=g(x) in the ring Zp[x]/(h(x)). In some cases, p will be prime and will have degree d and be irreducible in Zp(x), so that Zp[x]/(h(x)).will be a finite field of order .
Notation: p(x) ≡ q(x) mod (h(x), n) means that h(x)|p(x) − q(x) all coefficients are taken modulo n
Time complexity functions will be written in “big-O” notation. A function f(x) is considered to be O (g(x))(pronounced “big-oh of g”) if given some function g(x) there exists a constant c such that |f(x)|≤c|g (x)|⋅ for all values of x0, where x is defined to be the binary input length of n.
The function M(n) will be used to represent the time complexity function for multiplication.
8.4.Definitions
Diophantine equation
Euclidean Algorithm Extended Euclid Algorithm
The greatest common divisor GCD (or greatest common factor GCF)
8.5.List of theorems, formulars and equations
8.6.List of abbreviations
8.7.List of people mentioned in the book
8.8.Index
8.9.Explanations
8.10.Fonts
italic: for scalers;
Bold italic: for vectors in D-dimensional vector space, D = 1, 2, 3;
Boldface: for vectors in Rb ;
Sans serif: for operators or second rank tensors (matrices);
Bold sans serif: for matrices with vector/tensor elements;
BLA C K B O A RD BO LD : for vector space.
8.11.List of symbols
8.12.Sub and super scripts
8.13.Marks
@↑↓
≈≠≡⌂∩∑∏ ≈∵∴⊥∥≌∽∈
8.14.词冠???
10 12 Τ Τερα 核 10 9 Giga 京 10 -9 Nano 钎 10 -12 Pico
8.15.UNITS
8.16.Units designation
Atm BYU bar etc
8.17.Constants
9.Comparisons of Algorithm
Available software such as Maple, Mathmatica in computing primality tests
Different high level computer languages such as C/C++, Java
Low-level languages such as assembly
Machine languages
Different Oss such as Windows, Linux, BSD
Software available
Plarforms available
10.Intro
10.1.TOC for Introduction to Algorithms
Table of Contents
Preface
I Foundations
1 The Role of Algorithms in Computing
1.1 Algorithms
1.2 Algorithms as a technology
2 Getting Started
2.1 Insertion sort
2.2 Analyzing algorithms
2.3 Designing Algorithms
3 Growth of Functions
3.1 Asymptotic notation
3.2 Standard notations and common functions
4 Recurrences
4.1 The substitution method
4.2 The recursion-tree method
4.3 The master method
4.4 Proof of the master theorem
5 Probabilistic Analysis and Randomized Algorithms
5.1 The hiring problem
5.2 Indicator random variables
5.3 Randomized algorithms
5.4 Probabilistic analysis and further uses of indicator random variables
II Sorting and Order Statistics
6 Heapsort
6.1 Heaps
6.2 Maintaining the heap property
6.3 Building a heap
6.4 The heapsort algorithm
6.5 Priority queues
7 Quicksort
7.1 Description of quicksort
7.2 Performance of quicksort
7.3 Randomized versions of quicksort
7.4 Analysis of quicksort
8 Sorting in Linear Time
8.1 Lower bounds for sorting
8.2 Counting sort
8.3 Radix sort
8.4 Bucket sort
9 Medians and Order Statistics
9.1 Minimum and maximum
9.2 Selection in expected linear time
9.3 Selection in worst-case linear time
III Data Structures
10 Elementary Data Structures
10.1 Stacks and queues
10.2 Linked lists
10.3 Implementing pointers and objects
10.4 Representing rooted trees
11 Hash Tables
11.1 Direct-address tables
11.2 Hash tables
11.3 Hash functions
11.4 Open addressing
11.5 Perfect hashing
12 Binary Search Trees
12.1 What is a binary search tree?
12.2 Querying a binary search tree
12.3 Insertion and deletion
12.4 Randomly built binary search trees
13 Red-Black Trees
13.1 Properties of red-black trees
13.2 Rotations
13.3 Insertion
13.4 Deletion
14 Augmenting Data Structures
14.1 Dynamic order statistics
14.2 How to augment a data structure
14.3 Interval trees
IV Advanced Design and Analysis Technique
15 Dynamic Programming
15.1 Assembly-line scheduling
15.2 Matrix-chain multiplication
15.3 Elements of dynamic programming
15.4 Longest common subsequence
15.5 Optimal binary search trees
16 Greedy Algorithms
16.1 An activity-selection problem
16.2 Elements of the greedy strategy
16.3 Huffman codes
16.4 Theoretical foundations for greedy methods
16.5 A task-scheduling problem
17 Amortized Analysis
17.1 Aggregate analysis
17.2 The accounting method
17.3 The potential method
17.4 Dynamic tables
V Advanced Data Structures
18 B-Trees
18.1 Definition of B-trees
18.2 Basic operations on B-trees
18.3 Deleting a key from a B-tree
19 Binomial Heaps
19.1 Binomial trees and binomial heaps
19.2 Operations on binomial heaps
20 Fibonacci Heaps
20.1 Structure of Fibonacci heaps
20.2 Mergeable-heap operations
20.3 Decreasing a key and deleting a node
20.4 Bounding the maximum degree
21 Data Structures for Disjoint Sets
21.1 Disjoint-set operations
21.2 Linked-list representation of disjoint sets
21.3 Disjoint-set forests
21.4 Analysis of union by rank with path compression
VI Graph Algorithms
22 Elementary Graph Algorithms
22.1 Representations of graphs
22.2 Breadth-first search
22.3 Depth-first search
22.4 Topological sort
22.5 Strongly connected components
23 Minimum Spanning Trees
23.1 Growing a minimum spanning tree
23.2 The algorithms of Kruskal and Prim
24 Single-Source Shortest Paths
24.1 The Bellman-Ford algorithm
24.2 Single-source shortest paths in directed acyclic graphs
24.3 Dijkstra's algorithm
24.4 Difference constraints and shortest paths
24.5 Proofs of shortest-paths properties
25 All-Pairs Shortest Paths
25.1 Shortest paths and matrix multiplication
25.2 The Floyd-Warshall algorithm
25.3 Johnson's algorithm for sparse graphs
26 Maximum Flow
26.1 Flow networks
26.2 The Ford-Fulkerson method
26.3 Maximum bipartite matching
26.4 Push-relabel algorithms
26.5 The relabel-to-front algorithm
VII Selected Topics
27 Sorting Networks
27.1 Comparison networks
27.2 The zero-one principle
27.3 A bitonic sorting network
27.4 A merging network
27.5 A sorting network
28 Matrix Operations
28.1 Properties of matrices
28.2 Strassen's algorithm for matrix multiplication
28.3 Solving systems of linear equations
28.4 Inverting matrices
28.5 Symmetric positive-definite matrices and least-squares approximation
29 Linear Programming
29.1 Standard and slack forms
29.2 Formulating problems as linear programs
29.3 The simplex algorithm
29.4 Duality
29.5 The initial basic feasible solution
30 Polynomials and the FFT
30.1 Representation of polynomials
30.2 The DFT and FFT
30.3 Efficient FFT implementations
31 Number-Theoretic Algorithms
31.1 Elementary number-theoretic notions
31.2 Greatest common divisor
31.3 Modular arithmetic
31.4 Solving modular linear equations
31.5 The Chinese remainder theorem
31.6 Powers of an element
31.7 The RSA public-key cryptosystem
31.8 Primality testing
31.9 Integer factorization
32 String Matching
32.1 The naive string-matching algorithm
32.2 The Rabin-Karp algorithm
32.3 String matching with finite automata
32.4 The Knuth-Morris-Pratt algorithm
33 Computational Geometry
33.1 Line-segment properties
33.2 Determining whether any pair of segments intersects
33.3 Finding the convex hull
33.4 Finding the closest pair of points
34 NP-Completeness
34.1 Polynomial time
34.2 Polynomial-time verification
34.3 NP-completeness and reducibility
34.4 NP-completeness proofs
34.5 NP-complete problems
35 Approximation Algorithms
35.1 The vertex-cover problem
35.2 The traveling-salesman problem
35.3 The set-covering problem
35.4 Randomization and linear programming
35.4 The subset-sum problem
VIII Appendix: Mathematical Background
A Summations
A.1 Summation formulas and properties
A.2 Bounding summations
B Sets, Etc.
B.1 Sets
B.2 Relations
B.3 Functions
B.4 Graphs
B.5 Trees
C Counting and Probability
C.1 Counting
C.2 Probability
C.3 Discrete random variables
C.4 The geometric and binomial distributions
C.5 The tails of the binomial distribution
Bibliography
Index (created by the authors)
Dostları ilə paylaş: |