What Can We Learn From Trees?

Mitchell Thomas
4 min readOct 19, 2018

… specifically, Binary Search Trees?

“leafless tree on the hill” by Fabrice Villard on Unsplash

Part I — October Trees

I’m a sucker for nature. I’m also a sucker for the nature of nature. By this I mean the way nature behaves. I’ve come to the conclusion that maybe nature actually knows what it’s doing.

Look at this tree. This is a beautifully complex tree with so many different avenues ascending from the trunk. In my opinion, this represents life. From the time that we are forming in our mother’s womb, we are extending roots into firm soil. Our birth representing our first sprouting to the surface. The first years of our life correlate with the strong foundational trunk, and then twigs and branches start forming in the most unexpected and complex ways.

Once you examine a tree and its path to its leaves more carefully, you’ll notice there is always a directional decision at hand between two paths in order to get to specific leaves (or in Winter’s case the end of the limb). And in some cases, the results of those simple decisions will get you to a low hanging branch and some will get you to the very tip top of the tree where your views are magnificent and you can finally see over all of the obstacles surrounding you. In essence, as one travels up the tree they are presented with countless small decisions, but those decisions always have two directions to take at a time. Maybe if one is chosen, it will lead to another small decision of avenues to take, and maybe one path just happens to be the trunk.

Some paths will lead you to leaves and maybe those leaves are beautiful and satisfying for the specific tree, but maybe they aren’t. If they aren’t, the answer is all too simple. Traverse back through the decisions you made to get there because now you know the way, right? You’ve mapped the tree out this far, so it isn’t difficult retracing steps until you feel comfortable taking the other route. Finding your way around the tree shouldn’t feel overwhelming, it is just a puzzle and a bunch of small decisions. So don’t get so caught up thinking one decision will take you so far from the trunk, that you can’t get back.

Part II — Binary Search Trees *in October (-:

Let’s add to the simple complexity.

I’ve thought this way for awhile about decisions I’m faced with in life. It’s just two avenues to take and if that doesn’t work just come back and take the other because you know how to get back. But, only recently I’ve been learning about the data structure called a Binary Search Tree. This logic is almost the exact way a Binary Search Tree stores, orders, and accesses data. There’s always only two decisions to make at every instance and if one brings you closer to where the data correctly fits in the tree, then that’s the avenue one takes to find or store that data. The ending result of a Binary Search Tree is a perfectly ordered structure of data. Doesn’t that sound a bit like the algorithms of nature?

Example of a Binary Search Tree

I mentioned a the beginning of this that I’m a sucker for the nature of nature. This is because nature appears to work in complex ways, but really they are so simple. And these complex ways are undeniably beautiful. Nature is programmed to work this way for efficient and effective reasons. The more I learn about the world of computer science, I realized how often the original thinkers of core algorithms looked to nature for inspiration. It’s such poetry.

In writing this I also thought about how little we know of nature, space, and time. Interesting enough, up to this point we have only been able to see 4% of the actual universe. (https://www.space.com/11642-dark-matter-dark-energy-4-percent-universe-panek.html) With that being said, imagine the programming possibilities and algorithms that still have yet to occur as more of the universe becomes discovered and new natural order and behavior arises. Once we see how much of the foreign universe is programmed, we may be able to mimic in quite unfathomable ways.

--

--