mirror of
https://github.com/AdrianKuta/Tree-Data-Structure.git
synced 2025-07-01 23:27:59 +02:00
Added README and LICENSE
This commit is contained in:
43
README.md
Normal file
43
README.md
Normal file
@ -0,0 +1,43 @@
|
||||
# Tree (Data Structure)
|
||||

|
||||
[](https://github.com/AdrianKuta/Design-Patterns-Kotlin/blob/master/LICENSE)
|
||||
|
||||
Simple implementation to store object in tree structure. Method `toString()` is overrided to provide nice tree view in logs.
|
||||
|
||||
## Usage
|
||||
|
||||
```kotlin
|
||||
val root = TreeNode<String>("Root")
|
||||
val beveragesNode = TreeNode<String>("Beverages")
|
||||
val curdNode = TreeNode<String>("Curd")
|
||||
root.addChild(beveragesNode)
|
||||
root.addChild(curdNode)
|
||||
|
||||
val teaNode = TreeNode<String>("tea")
|
||||
val coffeeNode = TreeNode<String>("coffee")
|
||||
val milkShakeNode = TreeNode<String>("Milk Shake")
|
||||
beveragesNode.addChild(teaNode)
|
||||
beveragesNode.addChild(coffeeNode)
|
||||
beveragesNode.addChild(milkShakeNode)
|
||||
|
||||
val gingerTeaNode = TreeNode<String>("ginger tea")
|
||||
val normalTeaNode = TreeNode<String>("normal tea")
|
||||
teaNode.addChild(gingerTeaNode)
|
||||
teaNode.addChild(normalTeaNode)
|
||||
|
||||
val yogurtNode = TreeNode<String>("yogurt")
|
||||
val lassiNode = TreeNode<String>("lassi")
|
||||
curdNode.addChild(yogurtNode)
|
||||
curdNode.addChild(lassiNode)
|
||||
|
||||
println(root)
|
||||
System.out.println("Remove: ${curdNode.value}")
|
||||
root.removeChild(curdNode)
|
||||
System.out.println("Remove: ${gingerTeaNode.value}")
|
||||
root.removeChild(gingerTeaNode)
|
||||
println(root)
|
||||
```
|
||||
|
||||
*Output:*
|
||||
|
||||
<img src="https://github.com/AdrianKuta/Tree-Collection/blob/master/images/console_output.png" width=400>
|
Reference in New Issue
Block a user