官术网_书友最值得收藏!

Chapter 1. Why Bother? – Basic

Since you already know Java, you have of course written a few programs, which means you have written algorithms. "Well then, what is it?" you might ask. An algorithm is a list of well-defined steps that can be followed by a processor mechanically, or without involving any sort of intelligence, which would produce a desired output in a finite amount of time. Well, that's a long sentence. In simpler words, an algorithm is just an unambiguous list of steps to get something done. It kind of sounds like we are talking about a program. Isn't a program also a list of instructions that we give the computer to follow, in order to get a desired result? Yes it is, and that means an algorithm is really just a program. Well not really, but almost. An algorithm is a program without the details of the particular programming language that we are coding it in. It is the basic idea of the program; think of it as an abstraction of a program where you don't need to bother about the program's syntactic details.

Well, since we already know about programming, and an algorithm is just a program, we are done with it, right? Not really. There is a lot to learn about programs and algorithms, that is, how to write an algorithm to achieve a particular goal. There are, of course, in general, many ways to solve a particular problem and not all ways may be equal. One way may be faster than another, and that is a very important thing about algorithms. When we study algorithms, the time it takes to execute is of utmost importance. In fact, it is the second most important thing about them, the first one being their correctness.

In this chapter, we will take a deeper look into the following ideas:

  • Measuring the performance of an algorithm
  • Asymptotic complexity
  • Why asymptotic complexity matters
  • Why an explicit study of algorithms is important
主站蜘蛛池模板: 南汇区| 介休市| 黄陵县| 友谊县| 凤山市| 鄂托克前旗| 亚东县| 襄垣县| 乐亭县| 永吉县| 陆川县| 巩义市| 临夏县| 中西区| 买车| 达日县| 武威市| 冷水江市| 罗甸县| 岢岚县| 开原市| 阳西县| 中江县| 江川县| 青铜峡市| 上虞市| 聂荣县| 武义县| 商洛市| 罗源县| 黄冈市| 韶山市| 静宁县| 图木舒克市| 宣城市| 盐边县| 疏勒县| 静安区| 维西| 新邵县| 安陆市|