<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5658733208933314187</id><updated>2023-11-04T02:02:28.345-07:00</updated><category term="Design Pattern"/><category term="Java"/><category term="Patterns and Anti-Patterns"/><category term="Abstract factory pattern"/><category term="Algorithm"/><category term="BubbleSort"/><category term="Data structure"/><category term="Factory"/><category term="Factory method pattern"/><category term="Hash table"/><category term="Insertion sort"/><category term="Inversion of Control"/><category term="Languages"/><category term="Linked list"/><category term="MergeSort"/><category term="Methodologies"/><category term="PriorityQueue"/><category term="Programming"/><category term="Quicksort"/><category term="Shortest path problem"/><category term="Sorting algorithm"/><category term="Topological sorting"/><category term="Trees"/><title type='text'>Data Structures, Design Patterns &amp; Algorithms in Java</title><subtitle type='html'>Data Structures, Design Patterns &amp;amp; Algorithms in Java</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>20</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-8533962812386683264</id><published>2019-01-19T10:17:00.000-08:00</published><updated>2019-01-19T10:17:38.285-08:00</updated><title type='text'>Operating Systems Concepts for IoT (Internet of Things)</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Fundamentals&lt;br /&gt;
&lt;br /&gt;
A task is a program, program unit, process, or thread (lightweight process). It could be a sequential function with an infinite loop. Usually can be of two types user or kernel.&lt;br /&gt;
&lt;br /&gt;
Why do we need an operating system (OS)?&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Manage hardware and software resources&lt;/li&gt;
&lt;li&gt;Power Management&lt;/li&gt;
&lt;li&gt;Task schedulers&lt;/li&gt;
&lt;li&gt;Task management&lt;/li&gt;
&lt;li&gt;supports multitasking&lt;/li&gt;
&lt;li&gt;Inter-process communications&lt;/li&gt;
&lt;li&gt;Memory allocation and management&lt;/li&gt;
&lt;li&gt;Managing I/O devices and peripherals&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Analog&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;motors&lt;/li&gt;
&lt;li&gt;valves&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Digital&lt;/li&gt;
&lt;li&gt;Hardware Interrupts&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;ISR (Interrupt Service Routines)&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
Task Scheduling Algorithms&lt;br /&gt;
&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Time-sharing task scheduling&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Pre-emptive&lt;/li&gt;
&lt;li&gt;Non-preemptive&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Priority-based&amp;nbsp;Round Robin Scheduling&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
Timers&lt;br /&gt;
&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Internal core timers&lt;/li&gt;
&lt;li&gt;Software timers&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;One shot timers&lt;/li&gt;
&lt;li&gt;Auto-reloaded timers&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;br /&gt;
Task Management&lt;br /&gt;
&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Managing the Task States&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Running&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Not Running&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Ready&lt;/li&gt;
&lt;li&gt;Suspended&lt;/li&gt;
&lt;li&gt;Blocked&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;li&gt;Context Switching&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
Race Condition&lt;/div&gt;
&lt;div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Undesirable condition when multiple tasks (or threads) try to access and change the shared data simultaneously.&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
Thread Safety&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Locking shared resources/data using a critical section&lt;/li&gt;
&lt;li&gt;Intertask communication&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
Deadlock&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Two tasks are waiting for the same resource held by the other&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Deadlock Prevention&lt;/div&gt;
&lt;div&gt;
- planning resource allocation&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Interprocess Communications&lt;/div&gt;
&lt;div&gt;
- Message Queues&lt;/div&gt;
&lt;div&gt;
- Interrupts&lt;/div&gt;
&lt;div&gt;
- Mutex - provides mutual exclusion when concurrent tasks access a shared resource&lt;/div&gt;
&lt;div&gt;
- semaphore&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Dynamic Memory Allocation&lt;/div&gt;
&lt;div&gt;
- Heap&lt;/div&gt;
&lt;div&gt;
- First Fit Memory Allocation&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Static Memory Allocation&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;- Stack&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Characteristics&lt;br /&gt;
&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Small Footprint&lt;/li&gt;
&lt;li&gt;Modularity&lt;/li&gt;
&lt;li&gt;Extensibility&lt;/li&gt;
&lt;li&gt;Flexible&lt;/li&gt;
&lt;li&gt;Easy to use API&lt;/li&gt;
&lt;li&gt;Portability&lt;/li&gt;
&lt;li&gt;Tools Support&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
Should we use an OS in IoT?&lt;br /&gt;
&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;to build an ecosystem for device drivers.&lt;/li&gt;
&lt;li&gt;support for extensibility&lt;/li&gt;
&lt;li&gt;Security&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
Why ecosystem&lt;br /&gt;
&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;vendor&amp;nbsp;&lt;/li&gt;
&lt;li&gt;open source community&lt;/li&gt;
&lt;li&gt;user support&amp;nbsp;&lt;/li&gt;
&lt;li&gt;community&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
IoT System&lt;br /&gt;
&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;managing processor&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
Types of Operating Systems&lt;/div&gt;
&lt;div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;General Purpose&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;rich functionality&lt;/li&gt;
&lt;li&gt;complex functionality&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Embedded OS for resource constraint device&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;e.g. coffee machines, smart sensors, wireless routers&lt;/li&gt;
&lt;li&gt;small footprint&lt;/li&gt;
&lt;li&gt;high reliability&lt;/li&gt;
&lt;li&gt;for optimized performance&lt;/li&gt;
&lt;li&gt;e.g. FreeRTOS (real-time OS), Android Things&lt;/li&gt;
&lt;li&gt;limited file system support&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/8533962812386683264/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2019/01/operating-systems-concepts-for-iot.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/8533962812386683264'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/8533962812386683264'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2019/01/operating-systems-concepts-for-iot.html' title='Operating Systems Concepts for IoT (Internet of Things)'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-6141381584441809804</id><published>2019-01-19T06:57:00.002-08:00</published><updated>2019-01-19T07:14:15.279-08:00</updated><title type='text'>Definition of Data Structures</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
Definition&lt;/h2&gt;
A&amp;nbsp;&lt;b&gt;data structure&lt;/b&gt;&amp;nbsp;is a particular way of organizing and storing data in a computer so that it can be accessed and modified efficiently. More precisely, a data structure is a collection of data values, the relationships among them, and the functions or operations that can be applied to the data.&lt;span style=&quot;background-color: white; color: #24292e; font-family: , , &amp;quot;segoe ui&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif , &amp;quot;apple color emoji&amp;quot; , &amp;quot;segoe ui emoji&amp;quot; , &amp;quot;segoe ui symbol&amp;quot;; font-size: 16px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Understanding data structures is a must for every programmer as it clarifies the working of inner data for a program.&lt;br /&gt;
&lt;br /&gt;
Below are the examples of data structures from real life&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;shopping list&lt;/li&gt;
&lt;li&gt;bank statement - intentional list of transactions where each transaction is an intentional arrangement of data fields like information, date, amount,&amp;nbsp; involved parties etc. with a chronological order to&lt;/li&gt;
&lt;li&gt;telephone directory&lt;/li&gt;
&lt;li&gt;dictionary&lt;/li&gt;
&lt;li&gt;thesaurus&lt;/li&gt;
&lt;li&gt;encyclopedia&lt;/li&gt;
&lt;li&gt;movie ticket availability&lt;/li&gt;
&lt;li&gt;railway time table&lt;/li&gt;
&lt;li&gt;flight schedule&lt;/li&gt;
&lt;li&gt;mobile phone plans (showing various monthly packages)&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/6141381584441809804/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2019/01/definition-of-data-structures.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/6141381584441809804'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/6141381584441809804'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2019/01/definition-of-data-structures.html' title='Definition of Data Structures'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-9101703856448761810</id><published>2012-11-16T18:10:00.001-08:00</published><updated>2012-11-16T18:10:19.566-08:00</updated><title type='text'>Facebook Edgerank Algorithm Explained</title><content type='html'>&lt;span style=&quot;background-color: white; color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;the Edgerank algorithm is used in Facebook to determine the order of posts that should be shown on a user&#39;s Top News feed.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;270&quot; src=&quot;http://www.youtube.com/embed/kI4YIYInou0?fs=1&quot; width=&quot;480&quot;&gt;&lt;/iframe&gt;</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/9101703856448761810/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2012/11/facebook-edgerank-algorithm-explained.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/9101703856448761810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/9101703856448761810'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2012/11/facebook-edgerank-algorithm-explained.html' title='Facebook Edgerank Algorithm Explained'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/kI4YIYInou0/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-2638073002138676215</id><published>2012-11-04T19:16:00.001-08:00</published><updated>2012-11-04T19:16:35.673-08:00</updated><title type='text'>Flyweight Design Pattern</title><content type='html'>&lt;span style=&quot;background-color: #ebebeb; color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;The flyweight design pattern is used to dramatically increase the speed of code when using many similar objects.&lt;/span&gt;&lt;br style=&quot;background-color: #ebebeb; color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot; /&gt;&lt;br style=&quot;background-color: #ebebeb; color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot; /&gt;&lt;span style=&quot;background-color: #ebebeb; color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;To reduce memory usage the flyweight design pattern shares Objects that are the same rather than creating new ones.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;270&quot; src=&quot;http://www.youtube.com/embed/0vV-R2926ss?fs=1&quot; width=&quot;480&quot;&gt;&lt;/iframe&gt;</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/2638073002138676215/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2012/11/flyweight-design-pattern.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/2638073002138676215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/2638073002138676215'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2012/11/flyweight-design-pattern.html' title='Flyweight Design Pattern'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/0vV-R2926ss/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-4075457528204267105</id><published>2012-11-04T19:05:00.001-08:00</published><updated>2012-11-04T19:05:45.550-08:00</updated><title type='text'>Bridge Design Pattern</title><content type='html'>&lt;span style=&quot;background-color: white; color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;This pattern is used to build a group of classes that slowly adds functionality from one class to the next.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #ebebeb; color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;270&quot; src=&quot;http://www.youtube.com/embed/9jIgSsIfh_8?fs=1&quot; width=&quot;480&quot;&gt;&lt;/iframe&gt;</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/4075457528204267105/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2012/11/bridge-design-pattern.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/4075457528204267105'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/4075457528204267105'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2012/11/bridge-design-pattern.html' title='Bridge Design Pattern'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/9jIgSsIfh_8/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-780263257487497140</id><published>2012-11-04T18:53:00.001-08:00</published><updated>2012-11-04T18:56:01.969-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Design Pattern"/><category scheme="http://www.blogger.com/atom/ns#" term="Java"/><category scheme="http://www.blogger.com/atom/ns#" term="Patterns and Anti-Patterns"/><title type='text'>Facade Design Pattern</title><content type='html'>&lt;div class=&quot;zemanta-img&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:FacadeDesignPattern.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;English: Author: Alcides Carlos de Moraes Neto...&quot; src=&quot;http://upload.wikimedia.org/wikipedia/commons/thumb/a/ac/FacadeDesignPattern.png/300px-FacadeDesignPattern.png&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;English: Author: Alcides Carlos de Moraes Neto (wikipedia.10.alcides@spamgourmet.com) (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:FacadeDesignPattern.png&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;The &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Facade_pattern&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;Facade pattern&quot;&gt;Facade pattern&lt;/a&gt; simplify methods so that most of the processing is done in the background. In technical terms it decouples the client from the sub components needed to perform an operation.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #ebebeb; color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;270&quot; src=&quot;http://www.youtube.com/embed/B1Y8fcYrz5o?fs=1&quot; width=&quot;480&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;


&lt;div class=&quot;zemanta-pixie&quot;&gt;
&lt;img alt=&quot;&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/pixy.gif?x-id=f58b65b3-9226-4a93-ab12-b8119b9d5493&quot; /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/780263257487497140/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2012/11/facade-design-pattern.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/780263257487497140'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/780263257487497140'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2012/11/facade-design-pattern.html' title='Facade Design Pattern'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/B1Y8fcYrz5o/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-8326531357742304230</id><published>2012-11-04T18:38:00.001-08:00</published><updated>2012-11-04T18:49:55.352-08:00</updated><title type='text'>Iterator Design Pattern</title><content type='html'>&lt;div class=&quot;zemanta-img&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Iterator_design_pattern.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;The Iterator design pattern illustration, UML ...&quot; src=&quot;http://upload.wikimedia.org/wikipedia/commons/thumb/c/ca/Iterator_design_pattern.png/300px-Iterator_design_pattern.png&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;The Iterator design pattern illustration, UML diagram. (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Iterator_design_pattern.png&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;background-color: white;&quot;&gt;&lt;span style=&quot;color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;The iterator pattern is used to access objects that are stored in many different types of collection.&lt;/span&gt;&lt;br style=&quot;color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot; /&gt;&lt;span style=&quot;color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;This is done by creating a common interface that all the different collection classes share. Then an iterator is provided to traverse the objects they contain.&lt;/span&gt;&lt;br /&gt;
&lt;br style=&quot;color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot; /&gt;&lt;span style=&quot;color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;Because all different Collection classes share a common interface they can be treated polymorphically and it eliminate duplicate code.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;span style=&quot;background-color: white; color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;Below is the video tutorial for the Iterator pattern&lt;/span&gt;&lt;br /&gt;
&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;270&quot; src=&quot;http://www.youtube.com/embed/VKIzUuMdmag?fs=1&quot; width=&quot;480&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;zemanta-related&quot;&gt;
&lt;h6 class=&quot;zemanta-related-title&quot;&gt;
Related articles&lt;/h6&gt;
&lt;ul class=&quot;zemanta-article-ul zemanta-article-ul-image&quot;&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://iontech.wordpress.com/2012/10/19/the-for-each-loop/&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i.zemanta.com/119801223_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://iontech.wordpress.com/2012/10/19/the-for-each-loop/&quot; target=&quot;_blank&quot;&gt;The For-Each Loop&lt;/a&gt;&lt;span&gt;(iontech.wordpress.com)&lt;/span&gt;&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class=&quot;zemanta-pixie&quot;&gt;
&lt;img alt=&quot;&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/pixy.gif?x-id=3065ff6d-e07f-4bf6-8c5c-a7e4b5f51bf6&quot; /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/8326531357742304230/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2012/11/iterator-design-pattern.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/8326531357742304230'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/8326531357742304230'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2012/11/iterator-design-pattern.html' title='Iterator Design Pattern'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/VKIzUuMdmag/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-4016689165189446728</id><published>2012-11-04T17:00:00.001-08:00</published><updated>2012-11-04T17:11:49.499-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Design Pattern"/><category scheme="http://www.blogger.com/atom/ns#" term="Java"/><category scheme="http://www.blogger.com/atom/ns#" term="Patterns and Anti-Patterns"/><title type='text'>State Design Pattern</title><content type='html'>&lt;div class=&quot;zemanta-img&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:State_Design_Pattern_UML_Class_Diagram.svg&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;English: UML Class Diagram of the State Design...&quot; src=&quot;http://upload.wikimedia.org/wikipedia/commons/thumb/e/e8/State_Design_Pattern_UML_Class_Diagram.svg/300px-State_Design_Pattern_UML_Class_Diagram.svg.png&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;English: UML Class Diagram of the State Design Pattern (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:State_Design_Pattern_UML_Class_Diagram.svg&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
Below is the video tutorial on State Design Pattern&lt;br /&gt;
&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;270&quot; src=&quot;http://www.youtube.com/embed/MGEx35FjBuo?fs=1&quot; width=&quot;480&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;
&lt;div class=&quot;zemanta-related&quot;&gt;
&lt;h6 class=&quot;zemanta-related-title&quot;&gt;
Related articles&lt;/h6&gt;
&lt;ul class=&quot;zemanta-article-ul zemanta-article-ul-image&quot;&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://stackoverflow.com/questions/13143407/object-oriented-design-patterns-for-model-attribute-events&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i.zemanta.com/noimg_42_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://stackoverflow.com/questions/13143407/object-oriented-design-patterns-for-model-attribute-events&quot; target=&quot;_blank&quot;&gt;Object Oriented Design Patterns for Model Attribute Events&lt;/a&gt;&lt;span&gt;(stackoverflow.com)&lt;/span&gt;&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class=&quot;zemanta-pixie&quot;&gt;
&lt;img alt=&quot;&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/pixy.gif?x-id=ccb71351-45f0-4b7f-b322-c6eee605ec6c&quot; /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/4016689165189446728/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2012/11/state-design-pattern.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/4016689165189446728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/4016689165189446728'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2012/11/state-design-pattern.html' title='State Design Pattern'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/MGEx35FjBuo/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-4534969654099851068</id><published>2012-11-04T16:39:00.001-08:00</published><updated>2012-11-04T16:49:39.906-08:00</updated><title type='text'>Command Design Pattern</title><content type='html'>&lt;div class=&quot;zemanta-img&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Command_design_pattern_sequence1.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;The UML diagram describing relations between o...&quot; src=&quot;http://upload.wikimedia.org/wikipedia/commons/thumb/c/ca/Command_design_pattern_sequence1.png/300px-Command_design_pattern_sequence1.png&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;The UML diagram describing relations between objects of the Command design pattern. (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Command_design_pattern_sequence1.png&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;zemanta-img&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Command_design_pattern.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;The UML diagram which describes the structure ...&quot; src=&quot;http://upload.wikimedia.org/wikipedia/commons/thumb/5/52/Command_design_pattern.png/300px-Command_design_pattern.png&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;The UML diagram which describes the structure of the Command design pattern. (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Command_design_pattern.png&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;&quot;&gt;
&lt;span class=&quot;zemanta-img-attribution&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;&quot;&gt;
&lt;span class=&quot;zemanta-img-attribution&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;public interface Computer {&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp;void start();&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp;void shutdown();&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;public class Laptop implements Computer {&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp;public void start() {&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;System.out.print(&quot;Laptop is started&quot;);&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; public void shutdown() {&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;System.out.print(&quot;Laptop is shutdown&quot;);&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;public interface &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Command_pattern&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;Command pattern&quot;&gt;Command&lt;/a&gt; {&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp;void execute();&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp;void undo();&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;public class StartLaptop implements Command {&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp;Computer theComputer;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; public StartLaptop (Computer newComputer ) {&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; theComputer = newComputer;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; public void execute() {&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; theComputer.start();&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; public void undo() {&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; theComputer.shutdown();&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;span style=&quot;font-family: inherit;&quot;&gt;Below is the video tutorial about the Command pattern.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;270&quot; src=&quot;http://www.youtube.com/embed/7Pj5kAhVBlg?fs=1&quot; width=&quot;480&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;
&lt;div class=&quot;zemanta-related&quot;&gt;
&lt;h6 class=&quot;zemanta-related-title&quot;&gt;
Related articles&lt;/h6&gt;
&lt;ul class=&quot;zemanta-article-ul zemanta-article-ul-image&quot;&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://slanto.wordpress.com/2012/09/06/command-pattern/&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i.zemanta.com/noimg_16_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://slanto.wordpress.com/2012/09/06/command-pattern/&quot; target=&quot;_blank&quot;&gt;Command Pattern&lt;/a&gt;&lt;span&gt;(slanto.wordpress.com)&lt;/span&gt;&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class=&quot;zemanta-pixie&quot;&gt;
&lt;img alt=&quot;&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/pixy.gif?x-id=f1569f1f-6f28-4922-82d4-45984719f9fe&quot; /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/4534969654099851068/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2012/11/command-design-pattern.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/4534969654099851068'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/4534969654099851068'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2012/11/command-design-pattern.html' title='Command Design Pattern'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/7Pj5kAhVBlg/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-2699067248669904838</id><published>2012-11-04T00:08:00.001-07:00</published><updated>2012-11-04T00:08:12.843-07:00</updated><title type='text'>Singleton Design Pattern Tutorial</title><content type='html'>Singleton Pattern is used to prevent instantiation of an object more than once.&lt;br /&gt;
&lt;br /&gt;
&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;270&quot; src=&quot;http://www.youtube.com/embed/NZaXM67fxbs?fs=1&quot; width=&quot;480&quot;&gt;&lt;/iframe&gt;</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/2699067248669904838/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2012/11/singleton-design-pattern-tutorial.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/2699067248669904838'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/2699067248669904838'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2012/11/singleton-design-pattern-tutorial.html' title='Singleton Design Pattern Tutorial'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/NZaXM67fxbs/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-6483076135922135999</id><published>2012-11-03T23:57:00.001-07:00</published><updated>2012-11-03T23:57:44.906-07:00</updated><title type='text'>Abstract Factory Design Pattern</title><content type='html'>&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;270&quot; src=&quot;http://www.youtube.com/embed/xbjAsdAK4xQ?fs=1&quot; width=&quot;480&quot;&gt;&lt;/iframe&gt;</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/6483076135922135999/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2012/11/abstract-factory-design-pattern.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/6483076135922135999'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/6483076135922135999'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2012/11/abstract-factory-design-pattern.html' title='Abstract Factory Design Pattern'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/xbjAsdAK4xQ/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-898323503145531189</id><published>2012-11-03T23:52:00.001-07:00</published><updated>2012-11-03T23:52:25.327-07:00</updated><title type='text'>Factory Design Pattern</title><content type='html'>&lt;span style=&quot;background-color: white; color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;Factory design pattern is used to define the class of an object at runtime. It allows encapsulating object creation to keep all object creation code in one place. (separation of concerns)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #ebebeb; color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;span style=&quot;background-color: rgba(255, 255, 255, 0.701961); color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 17px;&quot;&gt;You cannot instantiate an abstract class. It is just there to facilitate polymorphism.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: rgba(255, 255, 255, 0.701961); color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 17px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;270&quot; src=&quot;http://www.youtube.com/embed/ub0DXaeV6hA?fs=1&quot; width=&quot;480&quot;&gt;&lt;/iframe&gt;</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/898323503145531189/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2012/11/factory-design-pattern.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/898323503145531189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/898323503145531189'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2012/11/factory-design-pattern.html' title='Factory Design Pattern'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/ub0DXaeV6hA/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-5349246147869520813</id><published>2012-11-03T22:53:00.001-07:00</published><updated>2012-11-03T22:53:20.051-07:00</updated><title type='text'>Basic Principles of Object Oriented Technology</title><content type='html'>&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;270&quot; src=&quot;http://www.youtube.com/embed/yRJ1rRoMnIM?fs=1&quot; width=&quot;480&quot;&gt;&lt;/iframe&gt;</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/5349246147869520813/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2012/11/basic-principles-of-object-oriented.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/5349246147869520813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/5349246147869520813'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2012/11/basic-principles-of-object-oriented.html' title='Basic Principles of Object Oriented Technology'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/yRJ1rRoMnIM/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-8098546501459822300</id><published>2010-06-29T01:41:00.001-07:00</published><updated>2011-10-28T05:52:07.885-07:00</updated><title type='text'>Algorithm Types</title><content type='html'>Below are the list of categories into which various algorithm can be categorized:&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Simple recursive algorithms&lt;/li&gt;
&lt;li&gt;Backtracking algorithms&lt;/li&gt;
&lt;li&gt;Divide and conquer algorithms&lt;/li&gt;
&lt;li&gt;Dynamic programming algorithms&lt;/li&gt;
&lt;li&gt;Greedy algorithms&lt;/li&gt;
&lt;li&gt;Branch and Bound algorithms&lt;/li&gt;
&lt;li&gt;Randomized algorithms&lt;/li&gt;
&lt;/ol&gt;</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/8098546501459822300/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2010/06/algorithm-types.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/8098546501459822300'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/8098546501459822300'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2010/06/algorithm-types.html' title='Algorithm Types'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-8937374863998013673</id><published>2010-06-28T07:08:00.000-07:00</published><updated>2010-06-28T07:11:30.748-07:00</updated><title type='text'>ArrayList or LinkedList ...??</title><content type='html'>&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/6479&quot;&gt;ArrayList or LinkedList ...??&lt;/a&gt; compares ArrayList and LinkedList</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/8937374863998013673/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2010/06/arraylist-or-linkedlist.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/8937374863998013673'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/8937374863998013673'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2010/06/arraylist-or-linkedlist.html' title='ArrayList or LinkedList ...??'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-3479065784959949059</id><published>2010-06-28T01:06:00.000-07:00</published><updated>2019-01-19T07:03:12.088-08:00</updated><title type='text'>Lecture Series on Design &amp; Analysis of Algorithms</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;a href=&quot;http://www.youtube.com/user/nptelhrd#g/c/7DC83C6B3312DF1E&quot;&gt;Computer Sc - Design &amp;amp; Analysis of Algorithms&lt;/a&gt; &lt;br /&gt;
Lecture Series on Design &amp;amp; Analysis of Algorithms by Prof.Abhiram Ranade, Department of Computer Science Engineering,IIT Bombay.&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/3479065784959949059/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2010/06/lecture-series-on-design-analysis-of.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/3479065784959949059'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/3479065784959949059'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2010/06/lecture-series-on-design-analysis-of.html' title='Lecture Series on Design &amp; Analysis of Algorithms'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-4026354999928921048</id><published>2010-06-24T04:06:00.001-07:00</published><updated>2010-06-24T04:06:41.072-07:00</updated><title type='text'></title><content type='html'>&lt;a title=&quot;View Refcardz #08: Design Patterns on Scribd&quot; href=&quot;http://www.scribd.com/doc/7471031/Refcardz-08-Design-Patterns&quot; style=&quot;margin: 12px auto 6px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block; text-decoration: underline;&quot;&gt;Refcardz #08: Design Patterns&lt;/a&gt; &lt;object id=&quot;doc_111644566167743&quot; name=&quot;doc_111644566167743&quot; height=&quot;600&quot; width=&quot;100%&quot; type=&quot;application/x-shockwave-flash&quot; data=&quot;http://d1.scribdassets.com/ScribdViewer.swf&quot; style=&quot;outline:none;&quot; &gt;  &lt;param name=&quot;movie&quot; value=&quot;http://d1.scribdassets.com/ScribdViewer.swf&quot;&gt;&lt;param name=&quot;wmode&quot; value=&quot;opaque&quot;&gt;&lt;param name=&quot;bgcolor&quot; value=&quot;#ffffff&quot;&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot;&gt;&lt;param name=&quot;FlashVars&quot; value=&quot;document_id=7471031&amp;access_key=key-12w3e63rpa7n8kka3bxy&amp;page=1&amp;viewMode=list&quot;&gt;&lt;embed id=&quot;doc_111644566167743&quot; name=&quot;doc_111644566167743&quot; src=&quot;http://d1.scribdassets.com/ScribdViewer.swf?document_id=7471031&amp;access_key=key-12w3e63rpa7n8kka3bxy&amp;page=1&amp;viewMode=list&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; height=&quot;600&quot; width=&quot;100%&quot; wmode=&quot;opaque&quot; bgcolor=&quot;#ffffff&quot;&gt;&lt;/embed&gt;  &lt;/object&gt;</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/4026354999928921048/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2010/06/refcardz-08-design-patterns.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/4026354999928921048'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/4026354999928921048'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2010/06/refcardz-08-design-patterns.html' title=''/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-7221264349842193861</id><published>2010-06-24T03:53:00.000-07:00</published><updated>2019-01-19T07:04:44.117-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Algorithm"/><category scheme="http://www.blogger.com/atom/ns#" term="BubbleSort"/><category scheme="http://www.blogger.com/atom/ns#" term="Insertion sort"/><category scheme="http://www.blogger.com/atom/ns#" term="MergeSort"/><category scheme="http://www.blogger.com/atom/ns#" term="Quicksort"/><category scheme="http://www.blogger.com/atom/ns#" term="Shortest path problem"/><category scheme="http://www.blogger.com/atom/ns#" term="Sorting algorithm"/><category scheme="http://www.blogger.com/atom/ns#" term="Topological sorting"/><title type='text'>List of Algorithms</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;zemanta-img&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
An algorithm is an unambiguous specification of how to solve a class of problems. It is a set of rules that precisely define a sequence of operations.&lt;br /&gt;
&lt;div class=&quot;zemanta-img&quot;&gt;
&lt;span style=&quot;background-color: white; color: #24292e; font-family: , , &amp;quot;segoe ui&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif , &amp;quot;apple color emoji&amp;quot; , &amp;quot;segoe ui emoji&amp;quot; , &amp;quot;segoe ui symbol&amp;quot;; font-size: 16px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;zemanta-img&quot;&gt;
Algorithms are a sequence of steps for accomplishing a task. We use complex algorithms in our day to day tasks for eg. searching in Google, sending emails, booking air tickets etc.&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Insertion-sort-example-300px.gif&quot; style=&quot;margin-left: auto; margin-right: auto;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;English: an example on insertion sort&quot; src=&quot;https://upload.wikimedia.org/wikipedia/commons/0/0f/Insertion-sort-example-300px.gif&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;an example on insertion sort (Photo credit:&amp;nbsp;&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Insertion-sort-example-300px.gif&quot; style=&quot;font-size: medium; text-align: left;&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;&lt;span style=&quot;font-size: small; text-align: left;&quot;&gt;)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Characteristics of algorithms&lt;/b&gt;&lt;br /&gt;
Performance (memory &amp;amp; CPU)&lt;br /&gt;
Simplicity&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/List_of_algorithms&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;List of algorithms&quot;&gt;List of Algorithms&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Finding Maximum&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Order_statistic&quot; rel=&quot;&quot; target=&quot;_blank&quot; title=&quot;Order statistic&quot;&gt;Order Statistics&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Matrix Multiplication&lt;/li&gt;
&lt;li&gt;Comparison&lt;/li&gt;
&lt;li&gt;Linear Search&lt;div class=&quot;zemanta-img zemanta-action-dragged&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:DFA_search_mommy.svg&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;String searching algorithm&quot; src=&quot;https://upload.wikimedia.org/wikipedia/commons/thumb/d/d9/DFA_search_mommy.svg/184px-DFA_search_mommy.svg.png&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;String searching algorithm (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:DFA_search_mommy.svg&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Binary_search_algorithm&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;Binary search algorithm&quot;&gt;Binary Search&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Selection Sort&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Insertion_sort&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;Insertion sort&quot;&gt;Insertion Sort&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Bubble_sort&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;Bubble sort&quot;&gt;Bubble Sort&lt;/a&gt;&lt;div class=&quot;zemanta-img zemanta-action-dragged&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Bubble-sort-example-300px.gif&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;English: an example on bubble sort.&quot; src=&quot;https://upload.wikimedia.org/wikipedia/commons/c/c8/Bubble-sort-example-300px.gif&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;English: an example on bubble sort. (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Bubble-sort-example-300px.gif&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;zemanta-img zemanta-action-dragged&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Bubble_sort_animation.gif&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;English: Sorting a random list using bubble sort&quot; src=&quot;https://upload.wikimedia.org/wikipedia/commons/3/37/Bubble_sort_animation.gif&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;English: Sorting a random list using bubble sort (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Bubble_sort_animation.gif&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;zemanta-action-dragged&quot;&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;Heap Sort&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Merge_sort&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;Merge sort&quot;&gt;Merge Sort&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class=&quot;zemanta-img zemanta-action-dragged&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Merge_sort_animation2.gif&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;English: Sorting a random list using merge sort.&quot; src=&quot;https://upload.wikimedia.org/wikipedia/commons/c/c5/Merge_sort_animation2.gif&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;English: Sorting a random list using merge sort. (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Merge_sort_animation2.gif&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;zemanta-img zemanta-action-dragged&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Merge-sort-example-300px.gif&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;English: an example on merge sort.&quot; src=&quot;https://upload.wikimedia.org/wikipedia/commons/c/cc/Merge-sort-example-300px.gif&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;English: an example on merge sort. (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Merge-sort-example-300px.gif&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;Radix or Bucket Sort&lt;/li&gt;
&lt;li&gt;Random algorithms - improves the worst case performance&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Quick Sort&lt;/li&gt;
&lt;li&gt;Finding Median&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Hashing&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Fibonacci_number&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;Fibonacci number&quot;&gt;Fibonacci sequence&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Spanning Tree&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Shortest_path_problem&quot; rel=&quot;&quot; target=&quot;_blank&quot; title=&quot;Shortest path problem&quot;&gt;Shortest Path&lt;/a&gt;&amp;nbsp;- finding the shortest path from one point to another.&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;verdana&amp;quot; , sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;Djikstra&#39;s algorithm&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/String_searching_algorithm&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;String searching algorithm&quot;&gt;String Searching&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;String Matching&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;verdana&amp;quot; , sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;NP-complete or NP-hard problem has no known good optimal solution. If someone finds an efficient algorithm for one NP-hard problem, then that algorithm would be applicable to all NP-hard problems.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;zemanta-related&quot;&gt;
&lt;h6 class=&quot;zemanta-related-title&quot;&gt;
Related articles&lt;/h6&gt;
&lt;ul class=&quot;zemanta-article-ul zemanta-article-ul-image&quot;&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://ssp.impulsetrain.com/2012/10/15/big-o-misconceptions/&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;https://i.zemanta.com/noimg_70_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://ssp.impulsetrain.com/2012/10/15/big-o-misconceptions/&quot; target=&quot;_blank&quot;&gt;Big-O Misconceptions&lt;/a&gt;(ssp.impulsetrain.com)&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://mayoiengineer.wordpress.com/2012/11/01/algorithm-headache/&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;https://i.zemanta.com/noimg_126_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://mayoiengineer.wordpress.com/2012/11/01/algorithm-headache/&quot; target=&quot;_blank&quot;&gt;Algorithm Headache&lt;/a&gt;(mayoiengineer.wordpress.com)&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://stackoverflow.com/questions/12913335/insertion-sort-vs-bubble-sort-vs-quicksort-algorithm&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;https://i.zemanta.com/noimg_6_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://stackoverflow.com/questions/12913335/insertion-sort-vs-bubble-sort-vs-quicksort-algorithm&quot; target=&quot;_blank&quot;&gt;insertion sort vs bubble sort vs quicksort algorithm&lt;/a&gt;(stackoverflow.com)&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://nicknash.me/2012/10/12/knuths-wisdom/&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;https://i.zemanta.com/118356647_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://nicknash.me/2012/10/12/knuths-wisdom/&quot; target=&quot;_blank&quot;&gt;What&#39;s really so bad about bubble sort?&lt;/a&gt;(nicknash.me)&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://www.daniweb.com/software-development/java/threads/435403/bubble-sort-help&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;https://i.zemanta.com/115628958_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.daniweb.com/software-development/java/threads/435403/bubble-sort-help&quot; target=&quot;_blank&quot;&gt;bubble sort help&lt;/a&gt;(daniweb.com)&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://www.daniweb.com/software-development/cpp/threads/440452/radix-sort&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;https://i.zemanta.com/126320306_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.daniweb.com/software-development/cpp/threads/440452/radix-sort&quot; target=&quot;_blank&quot;&gt;Radix sort&lt;/a&gt;(daniweb.com)&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://depthgr8.wordpress.com/2012/11/10/a-simple-c-program-for-insertion-sort/&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;https://i.zemanta.com/124819552_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://depthgr8.wordpress.com/2012/11/10/a-simple-c-program-for-insertion-sort/&quot; target=&quot;_blank&quot;&gt;A simple C program for Insertion sort&lt;/a&gt;(depthgr8.wordpress.com)&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://kintali.wordpress.com/2012/09/24/how-to-teach-algorithms/&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;https://i.zemanta.com/114133067_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://kintali.wordpress.com/2012/09/24/how-to-teach-algorithms/&quot; target=&quot;_blank&quot;&gt;How to teach Algorithms ?&lt;/a&gt;(kintali.wordpress.com)&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class=&quot;zemanta-pixie&quot;&gt;
&lt;img alt=&quot;&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;https://img.zemanta.com/pixy.gif?x-id=d6d204ec-088e-4ffe-821a-7f3147444c1e&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/7221264349842193861/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2010/06/list-of-algorithms.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/7221264349842193861'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/7221264349842193861'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2010/06/list-of-algorithms.html' title='List of Algorithms'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-5268711828459219433</id><published>2010-06-24T03:48:00.000-07:00</published><updated>2012-11-10T19:01:47.725-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Abstract factory pattern"/><category scheme="http://www.blogger.com/atom/ns#" term="Design Pattern"/><category scheme="http://www.blogger.com/atom/ns#" term="Factory"/><category scheme="http://www.blogger.com/atom/ns#" term="Factory method pattern"/><category scheme="http://www.blogger.com/atom/ns#" term="Inversion of Control"/><category scheme="http://www.blogger.com/atom/ns#" term="Languages"/><category scheme="http://www.blogger.com/atom/ns#" term="Methodologies"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><title type='text'>List of Design Patterns</title><content type='html'>&lt;div class=&quot;zemanta-img&quot;&gt;
&lt;a href=&quot;http://www.flickr.com/photos/54761490@N00/3988840683&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;LazyList-Iterator&quot; src=&quot;http://farm3.static.flickr.com/2427/3988840683_b9a94325a6_m.jpg&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;LazyList-Iterator (Photo credit: &lt;a href=&quot;http://www.flickr.com/photos/54761490@N00/3988840683&quot; target=&quot;_blank&quot;&gt;propella&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://javabydesign.blogspot.in/2012/11/singleton-design-pattern-tutorial.html&quot; target=&quot;_blank&quot;&gt;singleton&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Iterator&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;Iterator&quot;&gt;iterator&lt;/a&gt; / enumerator&lt;/li&gt;
&lt;li&gt;decorator&lt;/li&gt;
&lt;li&gt;facade&lt;/li&gt;
&lt;li&gt;listener&lt;/li&gt;
&lt;li&gt;publisher-subscriber&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://javabydesign.blogspot.in/2012/11/factory-design-pattern.html&quot; target=&quot;_blank&quot;&gt;factory&lt;/a&gt;&lt;div class=&quot;zemanta-img zemanta-action-dragged&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Abstract_Factory_in_LePUS3.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Factory Method pattern in LePUS3&quot; src=&quot;http://upload.wikimedia.org/wikipedia/commons/thumb/c/ce/Abstract_Factory_in_LePUS3.png/300px-Abstract_Factory_in_LePUS3.png&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;Factory Method pattern in LePUS3 (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Abstract_Factory_in_LePUS3.png&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Abstract_factory_pattern&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;Abstract factory pattern&quot;&gt;abstract factory&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href=&quot;http://a%20video%20tutorial%20about%20abstract%20factory%20design%20pattern/&quot; target=&quot;_blank&quot;&gt;A tutorial about abstract factory design pattern&lt;/a&gt;&lt;div class=&quot;zemanta-img zemanta-action-dragged&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Abstract_Factory_design_pattern.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;The Abstract Factory pattern illustration, UML...&quot; src=&quot;http://upload.wikimedia.org/wikipedia/commons/thumb/7/71/Abstract_Factory_design_pattern.png/300px-Abstract_Factory_design_pattern.png&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;The Abstract Factory pattern illustration, UML diagram. (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Abstract_Factory_design_pattern.png&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;zemanta-img zemanta-action-dragged&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Abstract_Factory.gif&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Abstract Factory&quot; src=&quot;http://upload.wikimedia.org/wikipedia/commons/thumb/3/39/Abstract_Factory.gif/300px-Abstract_Factory.gif&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;Abstract Factory (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Abstract_Factory.gif&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;Model–view–controller&quot;&gt;Model View Controller&lt;/a&gt; (MVC)&lt;div class=&quot;zemanta-img zemanta-action-dragged&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:MVC_Diagram_3.jpg&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;English: This diagram depicts how the Model Vi...&quot; src=&quot;http://upload.wikimedia.org/wikipedia/commons/3/3e/MVC_Diagram_3.jpg&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;English: This diagram depicts how the Model View Controller Architecture works. (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:MVC_Diagram_3.jpg&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;zemanta-img zemanta-action-dragged&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:MVC-Process.svg&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;English: The model, view, and controller (MVC)...&quot; src=&quot;http://upload.wikimedia.org/wikipedia/commons/thumb/a/a0/MVC-Process.svg/300px-MVC-Process.svg.png&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;English: The model, view, and controller (MVC) pattern relative to the user. (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:MVC-Process.svg&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;zemanta-img zemanta-action-dragged&quot;&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:MVC.gif&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Deutsch: Model View Controller&quot; src=&quot;http://upload.wikimedia.org/wikipedia/commons/thumb/0/0c/MVC.gif/300px-MVC.gif&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;Deutsch: Model View Controller (Photo credit: &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:MVC.gif&quot; target=&quot;_blank&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Inversion_of_control&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;Inversion of control&quot;&gt;Inversion of Control&lt;/a&gt; (IoC)&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;zemanta-related&quot;&gt;
&lt;h6 class=&quot;zemanta-related-title&quot;&gt;
Related articles&lt;/h6&gt;
&lt;ul class=&quot;zemanta-article-ul zemanta-article-ul-image&quot;&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://lchandara.wordpress.com/2012/09/09/inversion-of-control-containers-and-the-dependency-injection-pattern/&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i.zemanta.com/111075331_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://lchandara.wordpress.com/2012/09/09/inversion-of-control-containers-and-the-dependency-injection-pattern/&quot; target=&quot;_blank&quot;&gt;Inversion of Control Containers and the Dependency Injection pattern&lt;/a&gt;(lchandara.wordpress.com)&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://www.javacodegeeks.com/2012/10/abstract-factory-design-pattern-explained.html&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i.zemanta.com/121131401_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.javacodegeeks.com/2012/10/abstract-factory-design-pattern-explained.html&quot; target=&quot;_blank&quot;&gt;Abstract Factory Design Pattern Explained&lt;/a&gt;(javacodegeeks.com)&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://devlicio.us/blogs/krzysztof_kozmic/archive/2012/10/23/ioc-container-solves-a-problem-you-might-not-have-but-it-s-a-nice-problem-to-have.aspx&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i.zemanta.com/noimg_41_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://devlicio.us/blogs/krzysztof_kozmic/archive/2012/10/23/ioc-container-solves-a-problem-you-might-not-have-but-it-s-a-nice-problem-to-have.aspx&quot; target=&quot;_blank&quot;&gt;IoC container solves a problem you might not have but it&#39;s a nice problem to have&lt;/a&gt;(devlicio.us)&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://stackoverflow.com/questions/327955/does-functional-programming-replace-gof-design-patterns/328146&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i.zemanta.com/noimg_49_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://stackoverflow.com/questions/327955/does-functional-programming-replace-gof-design-patterns/328146&quot; target=&quot;_blank&quot;&gt;Answer by jalf for Does Functional Programming Replace GoF Design Patterns?&lt;/a&gt;&lt;span&gt;(stackoverflow.com)&lt;/span&gt;&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://howtodoinjava.com/2012/10/29/abstract-factory-pattern-in-java/&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i.zemanta.com/123782218_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://howtodoinjava.com/2012/10/29/abstract-factory-pattern-in-java/&quot; target=&quot;_blank&quot;&gt;Abstract factory pattern in java&lt;/a&gt;&lt;span&gt;(howtodoinjava.com)&lt;/span&gt;&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://javabydesign.blogspot.com/2012/11/factory-design-pattern.html&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i.zemanta.com/123324405_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://javabydesign.blogspot.com/2012/11/factory-design-pattern.html&quot; target=&quot;_blank&quot;&gt;Factory Design Pattern&lt;/a&gt;&lt;span&gt;(javabydesign.blogspot.com)&lt;/span&gt;&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://www.javacodegeeks.com/2012/10/design-best-practices-using-factory-method-pattern.html&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i.zemanta.com/121131399_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.javacodegeeks.com/2012/10/design-best-practices-using-factory-method-pattern.html&quot; target=&quot;_blank&quot;&gt;Design Best practices using Factory Method Pattern&lt;/a&gt;&lt;span&gt;(javacodegeeks.com)&lt;/span&gt;&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://architects.dzone.com/articles/modern-alternative-abstract&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i.zemanta.com/noimg_13_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://architects.dzone.com/articles/modern-alternative-abstract&quot; target=&quot;_blank&quot;&gt;A Modern Alternative to Abstract Factory Filtered Dependencies&lt;/a&gt;&lt;span&gt;(architects.dzone.com)&lt;/span&gt;&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://www.daniweb.com/software-development/java/threads/437698/an-explanation-to-factory-design-pattern&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i.zemanta.com/120214741_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.daniweb.com/software-development/java/threads/437698/an-explanation-to-factory-design-pattern&quot; target=&quot;_blank&quot;&gt;An explanation to Factory Design Pattern...!&lt;/a&gt;&lt;span&gt;(daniweb.com)&lt;/span&gt;&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://architects.dzone.com/articles/do-these-design-patterns-stand&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://i.zemanta.com/noimg_60_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://architects.dzone.com/articles/do-these-design-patterns-stand&quot; target=&quot;_blank&quot;&gt;Do These Design Patterns Stand the Test of Time?: Abstract Factory&lt;/a&gt;&lt;span&gt;(architects.dzone.com)&lt;/span&gt;&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class=&quot;zemanta-pixie&quot;&gt;
&lt;img alt=&quot;&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/pixy.gif?x-id=d6d204ec-088e-4ffe-821a-7f3147444c1e&quot; /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/5268711828459219433/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2010/06/list-of-design-patterns.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/5268711828459219433'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/5268711828459219433'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2010/06/list-of-design-patterns.html' title='List of Design Patterns'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://farm3.static.flickr.com/2427/3988840683_b9a94325a6_t.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5658733208933314187.post-9000655368131232812</id><published>2010-06-24T03:46:00.000-07:00</published><updated>2019-01-19T08:31:54.632-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Data structure"/><category scheme="http://www.blogger.com/atom/ns#" term="Hash table"/><category scheme="http://www.blogger.com/atom/ns#" term="Java"/><category scheme="http://www.blogger.com/atom/ns#" term="Linked list"/><category scheme="http://www.blogger.com/atom/ns#" term="PriorityQueue"/><category scheme="http://www.blogger.com/atom/ns#" term="Trees"/><title type='text'>List of Data Structures</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;&quot; style=&quot;text-align: left;&quot;&gt;
&lt;/div&gt;
&lt;div&gt;
Below is the list of important data structures&lt;/div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Simple Data Structures&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Primitive Data Types&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Boolean&lt;/li&gt;
&lt;li&gt;Numbers&lt;/li&gt;
&lt;li&gt;String&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;li&gt;Structures (structs)&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Points (x &amp;amp; y coordinates), Color (red, green, blue, alpha)&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Objects (Custom Data Types)&lt;/li&gt;
&lt;li&gt;Collections&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Arrays&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;single -dimensional arrays&lt;/li&gt;
&lt;li&gt;multi-dimensional arrays&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;two-dimensional arrays (rectangular),&amp;nbsp;&lt;/li&gt;
&lt;li&gt;three-dimensional arrays,&lt;/li&gt;
&lt;li&gt;and so on...&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Jagged arrays (ex. daily sales per month )&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Lists&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;ArrayList (resizable, dynamic or mutable arrays)&lt;/li&gt;
&lt;li&gt;Vector&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Operations&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Appending (Push) - adding an element at the end&lt;/li&gt;
&lt;li&gt;Insertion / Add - adding in the middle at a specified index&lt;/li&gt;
&lt;li&gt;Removing (Pop) - deleting an element at the end&lt;/li&gt;
&lt;li&gt;Deletion - removing an element at a specified index&lt;/li&gt;
&lt;li&gt;Splice - (adding and removing)&lt;/li&gt;
&lt;li&gt;Search / Find / Contains - searching for an item and returning location&lt;/li&gt;
&lt;li&gt;Sort - ordering the data&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;li&gt;Linked List&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Singly Linked List&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;ul&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;iframe allowfullscreen=&quot;&quot; class=&quot;YOUTUBE-iframe-video&quot; data-thumbnail-src=&quot;https://i.ytimg.com/vi/njTh_OwMljA/0.jpg&quot; frameborder=&quot;0&quot; height=&quot;266&quot; src=&quot;https://www.youtube.com/embed/njTh_OwMljA?feature=player_embedded&quot; width=&quot;320&quot;&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;ul&gt;
&lt;li&gt;Definition: A data structure consisting of a group of nodes where each node is composed of data and a reference (or a link) to the next node in the sequence.&lt;/li&gt;
&lt;li&gt;Operations&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Insertion&lt;/li&gt;
&lt;li&gt;Deletion&lt;/li&gt;
&lt;li&gt;Find / Search&lt;/li&gt;
&lt;li&gt;Traversal&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Iterative&lt;/li&gt;
&lt;li&gt;Recursive&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Reversal&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Iterative&lt;/li&gt;
&lt;li&gt;Recursive&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;li&gt;Doubly Linked List&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;ul&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;iframe allowfullscreen=&quot;&quot; class=&quot;YOUTUBE-iframe-video&quot; data-thumbnail-src=&quot;https://i.ytimg.com/vi/JdQeNxWCguQ/0.jpg&quot; frameborder=&quot;0&quot; height=&quot;266&quot; src=&quot;https://www.youtube.com/embed/JdQeNxWCguQ?feature=player_embedded&quot; width=&quot;320&quot;&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;ul&gt;&lt;ul&gt;
&lt;ul&gt;
&lt;li&gt;Definition: A data structure consisting of a group of nodes where&amp;nbsp;each node contains two fields, called links, that are references to the previous and to the next node in the sequence of nodes.&lt;/li&gt;
&lt;li&gt;The two node links allow traversal of the list in either direction. While adding or removing a node in a doubly linked list requires changing more links than the same operations on a singly linked list, the operations are simpler and potentially more efficient (for nodes other than first nodes) because there is no need to keep track of the previous node during traversal or no need to traverse the list to find the previous node, so that its link can be modified.&lt;/li&gt;
&lt;li&gt;Operations&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Insertion&lt;/li&gt;
&lt;li&gt;Deletion&lt;/li&gt;
&lt;li&gt;Traversal&lt;/li&gt;
&lt;li&gt;Reverse Traversal&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;li&gt;Circular Linked List&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Abstract Data Type&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Queue - First In, First Out&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Examples - Job Queue&lt;/li&gt;
&lt;li&gt;Operations&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Enqueue - adding an element at Last&lt;/li&gt;
&lt;li&gt;Dequeue - removing an element from Front&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;li&gt;Stack - Last In, First Out&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Operations&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Push&lt;/li&gt;
&lt;li&gt;Pop&lt;/li&gt;
&lt;li&gt;Peek&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;li&gt;Priority Queue&lt;/li&gt;
&lt;li&gt;Double-ended Queue (Deque) - supports adding deletion from both ends&lt;/li&gt;
&lt;li&gt;Hash-Based Data Structures&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Hash_table_3_1_1_0_1_0_0_SP.svg&quot; style=&quot;margin-left: auto; margin-right: auto;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;hash table illustration, with three k...&quot; src=&quot;https://upload.wikimedia.org/wikipedia/commons/thumb/7/7d/Hash_table_3_1_1_0_1_0_0_SP.svg/300px-Hash_table_3_1_1_0_1_0_0_SP.svg.png&quot; title=&quot;&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;font-size: 12.8px;&quot;&gt;&lt;br /&gt;
hash table illustration, with three keys, funcbox, sparse range, no collisions, only the values stored. Inspired on File: HASHTB32.svg and other similar images. Created with make-hash-table-figure -nkeys 3 -funcbox 1 -sparse 1 -keys 0 -values 1 -collisions 0 -links 0 -overflow SP (Photo credit:&amp;nbsp;&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Hash_table_3_1_1_0_1_0_0_SP.svg&quot;&gt;Wikipedia&lt;/a&gt;)&lt;br /&gt;
&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Hash_table_5_0_1_1_1_1_1_LL.svg&quot;&gt;&lt;img src=&quot;https://lh3.googleusercontent.com/proxy/ENSSaIpn3FCfAa5_HvVOCnO1dAKe8P-8q6WjqK8dELuLYxKS2ODJnDpv9iFMQSJRlKrV3v5-fe4hFiKiV5Ry_9iXH3f509-IoX7vbNow9RfyUQyJs_TKKHhRjk9BaC-_chzkM6h6YfFkcESjgf2HlK8gcFs5vpjn7GlxBGcpHuTDsMF0rRN10nj3IX1Gmo0jBWQwbABRSQ&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
hash table illustration, with three keys, sparse range, buckets are links, collisions resolved by separate chaining, keys and values stored. Inspired on File: HASHTB32.svg and other similar images. Created with make-hash-table-figure -nkeys 5 -funcbox 0 -sparse 1 -keys 1 -values 1 -collisions 1 -links 1 -overflow LL (Photo credit:&amp;nbsp;&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Hash_table_5_0_1_1_1_1_1_LL.svg&quot;&gt;Wikipedia&lt;/a&gt;)&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;&lt;div class=&quot;zemanta-img zemanta-action-dragged&quot; style=&quot;display: inline;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;ul&gt;&lt;ul&gt;&lt;ul&gt;&lt;ul&gt;
&lt;li&gt;Associative Arrays&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Invariants&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Unique Keys&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Operations&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Add&lt;/li&gt;
&lt;li&gt;Remove&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;li&gt;Hash Tables / Hash Map / Dictionaries&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;create with an initial capacity&lt;/li&gt;
&lt;li&gt;Hash Collision&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;separate chaining&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;li&gt;Set / HashSet&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;unordered collection of objects&lt;/li&gt;
&lt;li&gt;No sequence&lt;/li&gt;
&lt;li&gt;No duplicates&lt;/li&gt;
&lt;li&gt;Fast lookup - for checking membership, not retrieval&lt;/li&gt;
&lt;li&gt;Operations&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;add&lt;/li&gt;
&lt;li&gt;remove&lt;/li&gt;
&lt;li&gt;contains&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;li&gt;Tree&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Binary Tree&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Binary_tree.svg&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img src=&quot;https://lh5.googleusercontent.com/proxy/322gCoyJkp1tEhyXbK-5CVZojbZyC4plNUdTbFxULsLOjYSCBF_0Q1J44jhZU89Pld0-LJ8rWRkBBY_Uk7MtmO8-6bBvskpPHSxhnV4xfT1zl3315qnyfdenTEEdX1vsUua2LX2-rTGBXH-naKGAK1j1rKHkBA&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 12.8px;&quot;&gt;A simple binary tree of size 9 and height 3, with a root node whose value is 2. The above tree is unbalanced and not sorted. (Photo credit:&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Binary_tree.svg&quot; style=&quot;font-size: 12.8px;&quot;&gt;Wikipedia&lt;/a&gt;&lt;span style=&quot;font-size: 12.8px;&quot;&gt;)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;ul&gt;&lt;ul&gt;&lt;ul&gt;&lt;ul&gt;&lt;ul&gt;
&lt;li&gt;Binary Search Tree&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;invariants&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;no duplicates&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;operations&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;add&lt;/li&gt;
&lt;li&gt;delete&lt;/li&gt;
&lt;li&gt;find&lt;/li&gt;
&lt;li&gt;traverse&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;pre-order&lt;/li&gt;
&lt;li&gt;in-order&lt;/li&gt;
&lt;li&gt;post-order&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;li&gt;Self Balancing Trees&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;AVL Tree&lt;/li&gt;
&lt;li&gt;Red-Black Tree - (implementation of TreeMap in Java uses this)&lt;/li&gt;
&lt;li&gt;Scapegoat Trees&lt;/li&gt;
&lt;li&gt;Splay Trees&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Segment Tree (for min/max/sum range queries)&lt;/li&gt;
&lt;li&gt;Fenwick Tree (Binary Indexed Tree)&lt;/li&gt;
&lt;li&gt;Heap (Min Heap or Max Heap)&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;div class=&quot;zemanta-img zemanta-action-dragged&quot; style=&quot;display: inline;&quot;&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Leaf_correspondence.jpg&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img src=&quot;https://lh4.googleusercontent.com/proxy/STiM1fX4_AWU82dnupgeWetPkzZ786oHAGGW124ifiXt030zqI6p9VKjQLZ2WptORK-4LlO-T9uOeJ-zrvHrgXZnHhF075xNXlLmA5LPkQj5be1pMP8WlaJc2QZcCfvt4mqyGF9q2En6_r-FXpT0hHKFsjiveCxcsr3oU66C6gUZ8Q&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;font-size: 12.8px;&quot;&gt;&lt;table cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;float: left; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;font-size: 12.8px;&quot;&gt;A method for implementing Double ended priority queue(DEPQ) (Photo credit:&amp;nbsp;&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Leaf_correspondence.jpg&quot;&gt;Wikipedia&lt;/a&gt;)&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;ul style=&quot;font-size: medium; text-align: left;&quot;&gt;&lt;ul&gt;&lt;/ul&gt;
&lt;li&gt;Graph&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Directed Graph&lt;/li&gt;
&lt;li&gt;Undirected Graph&lt;/li&gt;
&lt;li&gt;Weighted Graph&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Trie&lt;/li&gt;
&lt;li&gt;Disjoint Set&lt;/li&gt;
&lt;li&gt;Bloom Filter&lt;/li&gt;
&lt;li&gt;Consistent Hash Ring&lt;/li&gt;
&lt;li&gt;Maps&lt;/li&gt;
&lt;li&gt;Ternary Search Trees&lt;/li&gt;
&lt;li&gt;B-Trees&lt;/li&gt;
&lt;li&gt;Graph&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;zemanta-img zemanta-action-dragged&quot; style=&quot;display: inline !important; text-align: left;&quot;&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div class=&quot;zemanta-related&quot;&gt;
&lt;h4 style=&quot;text-align: left;&quot;&gt;
Related articles&lt;/h4&gt;
&lt;ul class=&quot;zemanta-article-ul zemanta-article-ul-image&quot;&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://stackoverflow.com/questions/13271781/singly-linked-list-class-using-collection-hierarchy-c&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;https://i.zemanta.com/noimg_55_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://stackoverflow.com/questions/13271781/singly-linked-list-class-using-collection-hierarchy-c&quot; target=&quot;_blank&quot;&gt;Singly Linked List class using Collection hierarchy C++&lt;/a&gt;(stackoverflow.com)&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://hughewilliams.com/2012/10/01/five-myths-about-hash-tables/&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;https://i.zemanta.com/115768156_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://hughewilliams.com/2012/10/01/five-myths-about-hash-tables/&quot; target=&quot;_blank&quot;&gt;Five Myths about Hash Tables&lt;/a&gt;(hughewilliams.com)&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://opendatastructures.org/&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;https://i.zemanta.com/noimg_66_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://opendatastructures.org/&quot; target=&quot;_blank&quot;&gt;Open Data Structures: an open content textbook&lt;/a&gt;(opendatastructures.org)&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li-image zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://en.nerdaholyc.com/implementing-a-binary-tree-using-linear-linked-lists/&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;https://i.zemanta.com/noimg_6_80_80.jpg&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://en.nerdaholyc.com/implementing-a-binary-tree-using-linear-linked-lists/&quot; target=&quot;_blank&quot;&gt;Implementing a binary tree using linear linked lists&lt;/a&gt;(en.nerdaholyc.com)&lt;div&gt;
&lt;hr /&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class=&quot;zemanta-pixie&quot; style=&quot;text-align: left;&quot;&gt;
&lt;img alt=&quot;&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;https://img.zemanta.com/pixy.gif?x-id=d6d204ec-088e-4ffe-821a-7f3147444c1e&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;



&lt;!-- Blogger automated replacement: &quot;https://images-blogger-opensocial.googleusercontent.com/gadgets/proxy?url=http%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2Fthumb%2Fd%2Fd0%2FHash_table_5_0_1_1_1_1_1_LL.svg%2F300px-Hash_table_5_0_1_1_1_1_1_LL.svg.png&amp;amp;container=blogger&amp;amp;gadget=a&amp;amp;rewriteMime=image%2F*&quot; with &quot;https://lh3.googleusercontent.com/proxy/ENSSaIpn3FCfAa5_HvVOCnO1dAKe8P-8q6WjqK8dELuLYxKS2ODJnDpv9iFMQSJRlKrV3v5-fe4hFiKiV5Ry_9iXH3f509-IoX7vbNow9RfyUQyJs_TKKHhRjk9BaC-_chzkM6h6YfFkcESjgf2HlK8gcFs5vpjn7GlxBGcpHuTDsMF0rRN10nj3IX1Gmo0jBWQwbABRSQ&quot; --&gt;&lt;!-- Blogger automated replacement: &quot;https://images-blogger-opensocial.googleusercontent.com/gadgets/proxy?url=http%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2Fthumb%2Fa%2Fa7%2FLeaf_correspondence.jpg%2F300px-Leaf_correspondence.jpg&amp;amp;container=blogger&amp;amp;gadget=a&amp;amp;rewriteMime=image%2F*&quot; with &quot;https://lh4.googleusercontent.com/proxy/STiM1fX4_AWU82dnupgeWetPkzZ786oHAGGW124ifiXt030zqI6p9VKjQLZ2WptORK-4LlO-T9uOeJ-zrvHrgXZnHhF075xNXlLmA5LPkQj5be1pMP8WlaJc2QZcCfvt4mqyGF9q2En6_r-FXpT0hHKFsjiveCxcsr3oU66C6gUZ8Q&quot; --&gt;&lt;!-- Blogger automated replacement: &quot;https://images-blogger-opensocial.googleusercontent.com/gadgets/proxy?url=http%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2Fthumb%2Ff%2Ff7%2FBinary_tree.svg%2F300px-Binary_tree.svg.png&amp;amp;container=blogger&amp;amp;gadget=a&amp;amp;rewriteMime=image%2F*&quot; with &quot;https://lh5.googleusercontent.com/proxy/322gCoyJkp1tEhyXbK-5CVZojbZyC4plNUdTbFxULsLOjYSCBF_0Q1J44jhZU89Pld0-LJ8rWRkBBY_Uk7MtmO8-6bBvskpPHSxhnV4xfT1zl3315qnyfdenTEEdX1vsUua2LX2-rTGBXH-naKGAK1j1rKHkBA&quot; --&gt;</content><link rel='replies' type='application/atom+xml' href='http://javabydesign.blogspot.com/feeds/9000655368131232812/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javabydesign.blogspot.com/2010/06/list-of-data-structures.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/9000655368131232812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5658733208933314187/posts/default/9000655368131232812'/><link rel='alternate' type='text/html' href='http://javabydesign.blogspot.com/2010/06/list-of-data-structures.html' title='List of Data Structures'/><author><name>Tarun Telang</name><uri>http://www.blogger.com/profile/06444443291094457603</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkkcQ3HzS1bRV76gedtUL6rBv1hA30P73zeGpc89N9BLTb6DpduvQXuTDaXQYlA-NQBmAF0NVhNcEQ3LcQyxA6pJ8eTt3sXDhutUrpO6Rt5f_C1w-nR1m1Wq3tWXMiIIg/s113/0%3Fe%3D1597276800%26v%3Dbeta%26t%3DUR3cGC9YZjOmPV58Hkx5l-h2Q8NuwybkkADe2SE4SJk'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/njTh_OwMljA/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry></feed>