Home > Industries > Software

Source: Internet
Author: User

Tags: HTML relationship design best case sharing picture equals a time

20172305 2018-2019-1 "Java software architecture and data structure" the first week of learning summary textbook study content this week is mainly about the contents of the first and second chapters of the book:- Chapter I.
- Software quality:
- Accuracy (the degree to which the software meets specific requirements)
- Reliability (frequency and degree of damage to software failure)
- Robustness (good handling of error conditions)
- Availability (how easy it is for users to master and run tasks in the software)
- Maintainability (how easy the software is to make modifications)
- Reusability (the ease with which software components can be exploited by other software systems)
- Portability (software composition can be easily used in a variety of computer environments)
- Operational efficiency (the degree to which the software accomplishes its objectives without wasting resources)

- Data structures (how computers store and organize data): Array stack queue list binary tree hash table heap diagram
**program = data structure + algorithm****Software = Program Plus software engineering**

- Software quality:
- Chapter II
- Algorithm analysis
Large o notation (essentially a response to the development trend of algorithmic complexity)

- Growth function: Indicates the relationship between the size of the problem (n) and the value we want to optimize
- Time complexity (quantitative description of the algorithm's run time)--CPU usage time
- Space complexity (size of memory required to run a program)--Memory space

The progressive complexity is called the Order of the algorithm (ignoring constants and other minor items in the growth function of the algorithm, only the main items are retained)

- Issue 1: increasing CPU speed does not necessarily improve processing speed
- Problem 1 Solution: The Order of the algorithm is
**constant**[that is, the complexity is O (1)] or the**linear order**[that is, the complexity is O (n)], the increase in CPU speed will linearly improve processing speed. With the increase of the complexity of the algorithm, the speed of the processor has a smaller influence on the complexity. Different complexity, in the increase of the same speed of the processor, its operating efficiency is different.

- Issue 2: Analysis of time complexity
- Problem 2 Solution:
- The
**time complexity of the loop is equal to the complexity of the loop body multiplied by the number of times the loop runs.**time complexity O (n)

`for(int count = 0;count<n;count++){//*复杂度为O(1)的步骤系列}`

- When loops appear nested, the complexity of the loop is equal to the complexity of the
**inner loop multiplied by the complexity of the outer loop.**time Complexity O (n^2)

`for(int count = 0;count < n;count++){ for(int count2 = 0;count2<n;count2++) { //复杂度为O(1)的步骤系列 }}`

**the complexity of the method invocation takes into account the order of the loop body and the order of the calling method.**time Complexity O (n^2)

`for(int count = 0;count<n;count++){ printsum(count);}`

`public void printsum(int count){ int sum = 0; for(int I = 1;I<count;I++) sum += I; System.out.println(sum);}`

- Summarize:

- The
- Issue 3: Comparison of growth functions
- Solution to Problem 3: graph of growth function functions
- When n is smaller:
- n When larger:
- Conclusion: C < log2n < n < n * log2n < n^2 < N^3 < 2^n < 3^n < n!

- When n is smaller:

- (1) What is the order of the following growth functions?

- (2) Please determine the growth function and order of the code snippet below
- Answer:

- (3) Please determine the growth function and order of the code snippet below
- Answer:

- Blogs that are worth learning or questions:
- No problem, very perfect blog.

- Based on the scoring criteria, I scored this blog: 5 points.
- The score is as follows:
- Correct use of markdown syntax (plus 1 points)
- Complete features in the template (plus 1 points)
- Problem and solution process in textbook learning, one question plus 1 points
- Problem and resolution in code debugging, no problem
- Feelings, experience is not false big empty plus 1 points
- Reviews seriously, can point out the blog and the code of the problem in addition to 1 points

- Blogs that are worth learning or questions:
- The picture is used properly and clearly explains the problem and the relevant content

- Based on the scoring criteria, I scored this blog: 6 points.
- The score is as follows:
- Correct use of markdown syntax (plus 1 points)
- Complete features in the template (plus 1 points)
- Problems and solving process in textbook learning, two questions plus 2 points
- Problems in code debugging and resolution process, no problem
- Feelings, experience is not false big empty plus 1 points
- Reviews seriously, can point out the blog and the code of the problem in addition to 1 points

This week's study of the knot

20172304 Fang

20172323 Wang YuhanPair learning content: Software quality algorithm analysis growth function large O notation time complexity space complexity

Learning progress Bar`本学期的第一篇博客，又到当初写博客的时候了(?_?)。一口气学了两章内容，好在两章内容不是很多，随便翻了一下书，发现大部分是栈、队列以及链表之类的，开始系统的学习算法结构与分析。假期里做了几个程序没有让自己忘了太多的内容，捡起来也会容易得多。上学期在程序设计的课上取得满分，所以这学期要保持上学期的精神状态继续学习。作为新大二的学生，我更要为新大一的学弟学妹做个好头。加油！(? ??_??)?`

lines of code (new/cumulative) | Blog Volume (Add/accumulate) | Learning Time (new/cumulative) | Important Growth | |
---|---|---|---|---|

Goal | 5000 rows | 30 Articles | 400 hours | |

First week | 0/0 | 1/1 | 15/15 |

- Software Quality
- Analysis of complexity

20172305 2018-2019-1 "Java software architecture and data structure" first week study summary