Bananas
A banana is an edible fruit – botanically a berry – produced by several kinds of large herbaceous flowering plants in the genus Musa.
When it comes to algorithms, it always remind me of the Gauss’ solution to summarise the numbers from one to a hundred which I learned in primary school. Perhaps it is the first algorithm that I have learned. Whereas, I didn’t completely recognised the importance of his solution until I become a programmer. In a word, the time complexity of Gauss’ solution is $O(1)$ while the normal solution is $O(n)$. If I write programme to implement the former one, only one line of code is enough, but I have to write a for loop for the later one. Apparently, his solution is far more effective than the normal one especially when dealing with large amount of data. When I was learning data structure and algorithms, what I learned from Gauss helped understand what exactly the algorithm is and why I should learn it.
The word “algorithm”, which is difficult to spell, intimidated me when I know it at the first time. I thought it must be some complicated mathematical methods for experts. Is it? It is definitely not for the elitist mathematicians or programmers. It is just a solution as very same as Gauss’ to solve another problem. There are algorithms everywhere in our daily life not only in developer’s world. For example, stall holders calculate the price of goods in a way that decomposing fractional numbers into integers when multiplying them. $10.5\times3$ can be decomposed to $10\times3+0.5\times3$. This is a kind of algorithm that could help them make deal without a calculator.
After knowing about what algorithm is, it is obvious that why it is critically important for software engineers to learn it. It is not a programming tricks to astound your friends or managers but a practical approaches to save consumption of time and footage of disks. As a software engineer, we will have to deal with large amount of data or show the information as soon as possible. That is where we need algorithms. Algorithm is arguably the fundamental of programming.
In conclusion, it is necessary to learn data structure and algorithms for its significant benefits for robust and effective programme. To be an exceptional programmer needs to be able to master widely used algorithms and write code with them.
P.S. My repository. for data structure and algorithm. It seems that the “LaTex” expressions are not shown properly. I will find the solution later.
A banana is an edible fruit – botanically a berry – produced by several kinds of large herbaceous flowering plants in the genus Musa.
As Artificial Intellengence is becoming more and more popular, many generated video have been releasing on the Internet.
When I was at college I developed rhinitis and felt splitting headache when the temperature changed drastically. Many general practitioners in my hometown ha...
Ironically, as a Java developer, I found that it is interesting to build a website based on Jekyll, which is a framework written by Ruby. One reason is pres...
When it comes to algorithms, it always remind me of the Gauss’ solution to summarise the numbers from one to a hundred which I learned in primary school. Per...
After submitting my dissertation on the 20th April 2024, I keep on learning TDD. It is evident that learning a new skill is not as easy as I expected, especi...
In every aspect of our life, mathematics plays a major role even without our consciousness. Physics, chemistry, engineering, astrology, and so forth can exis...
It is a long time since I wrote the last journal. In order to hand in my dissertation on time, I have to spent much time writing it. The deadline is approach...
After reading a book named Test Driven-Practical TDD and Acceptance TDD for Java Developers for serval days, I finally wrote a demo by following the instruc...
A good news today is that I have found the solution to delete cluttered code. Then I felt bitterly embarrassed after realising that I even didn’t have found...
I was bitterly frustrated today because I couldn’t optimise some legacy code which is quite cluttered. A whole day was wasted and there wasn’t any solution ...
Today I read an essay in which the author harshly criticised the trend of learning programming in a few hours or a few days. The author provided adequate pr...
Sometimes I can’t focus on one thing. Even though nobody interrupts me, I just want to do many things at the same time. Consequently, I made a lot of mistake...