Tumgik
#data structures
confusedbyinterface · 2 months
Text
so I'm reading Gankra's "Learn Rust With Entirely Too Many Linked Lists" and the introduction feels like
STOP USING LINKED LISTS
DATA ELEMENTS WERE NOT SUPPOSED TO BE GIVEN POINTERS
YEARS OF COMPUTER SCIENCE yet NO REAL-WORLD USE FOUND for using anything other than Vec
Want to add and remove elements from the front and back just for a laugh? We have a tool for that: It's called "VecDeq"
"It might take a long time to look at any element but I'll make it up with all the merges, inserts, and splits I'll be doing" - Statements dreamed up by the utterly Deranged
LOOK at what Functional Programmers have been demanding your Respect for all this time, with all the LISP machines & tape readers we built for them (This is REAL Computer Science, done by REAL Computer Scientists)
Tumblr media Tumblr media
???????????
"Hello I would like element.next.next.next.next.next.next.next.next please"
They have played us for absolute fools
158 notes · View notes
a-fox-studies · 9 months
Text
Tumblr media
August 7, 2023
Uni 'A' has begun! Today we were introduced to data structures, and the teacher's accent was so heavy I zoned out too many times T-T
Planning on doing a pre-read before her class so it's more of a recall session rather than learning it new.
Tumblr media
Things I did today:
Recalled basics of C programming on a sheet of paper
Light reading on introduction to data structures
Created a new template for my digital planner
Tumblr media
@studaxy and I had a very productive 40 minutes :D
The days ahead look bright :)
🎧I Know Places - Taylor Swift
103 notes · View notes
404icy · 1 year
Text
Tumblr media Tumblr media Tumblr media Tumblr media
focus...
126 notes · View notes
coralinebabbles · 2 months
Text
Insert a singly linked list in lexiographic order
P1 <- P2<- pt
while (P1 <> null) and (Ip. info > P1.info) loop
P2<-P1
P1 <- P1. link
End loop
If Pt = P1 then
Ip.link <- Pt
Pt<-IP
Else
P2.link <- Ip
Ip.Link <- Pt
End if
9 notes · View notes
izicodes · 2 years
Text
What is an API? | Resource ✨
Tumblr media
Link to original Twitter post: What is an API by Rapid_API
168 notes · View notes
deletedg1rl · 10 months
Text
im trying so hard to understand linked lists 😭😭😭😭😭😭😭
Tumblr media
13 notes · View notes
lazyp0tat07 · 2 months
Text
What Dijkstra's two-stack algorithm does to Left parenthesis of Infix expression is everyone does to me
.
.
.
IGNORE 🤡
5 notes · View notes
kochivamarketing · 3 months
Text
Become Coding Expert with Data Structure Training Institute
Tumblr media
Are you looking to take your programming skills to the next level?
Master the foundations of computer science with our comprehensive data structures and algorithms training!
Why Data Structures Matter: Data structures form the backbone of efficient and organized programming. Understanding how to manipulate and utilize data is crucial for solving complex problems and creating optimized algorithms. Whether you're a beginner or an experienced coder, diving deep into data structures is a game-changer for your coding journey.
At Kochiva, the premier Data Structure Training Institute in India, we provide in-depth training on essential data structures like arrays, linked lists, stacks, queues, trees, graphs, and more. Our expert instructors with years of industry experience will help you truly understand how these data structures work and how to implement them efficiently in any programming language. You’ll gain hands-on experience with coding challenges and projects designed to hone your skills.
Don't just learn data structures; become a coding maestro! 🎓 Enroll in Kochiva now and sculpt your coding prowess with the best in the industry.
Your coding adventure awaits! 🚀💻
6 notes · View notes
Text
FIFO is ass
Bruh bro just took a major L going from FILO to this
5 notes · View notes
snaildotexe · 10 months
Text
Software Technical Interview Review List
Data Structures
Arrays (and Java List vs ArrayList)
String
Stack
Queue
LinkedList
Algorithms
Sorting (Bubblesort, Mergesort, Quicksort)
Recursion & Backtracking
Linear and Binary Search
String/Array algos
Tree traversal
Dynamic Programming
Graph algos (DFS, BFS, Dijksta's and Kruskals)
OOP fundamentals
Polymorphism
Inheritance
Encapsulation
Data abstraction
SOLID and GRASP
Explanations & example questions:
Strings and Arrays [ 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 ]
Stacks and Queues [ 1 | 2 ]
LinkedList [ 1 | 2 ]
Sorting & searching [ 1 | 2 | 3 | 4 | 5 | 6 | 7 ]
Recursion and Backtracking [ 1 | 2 | 3 | 4 ]
Dynamic Programming [ 1 | 2 | 3 | 4]
Graphs [ 1 | 2 | 3 ]
Tree [ 1 | 2 ]
General DS&A info and questions [ 1 | 2 | 3 | 4 | 5 ]
OOP review & questions [ 1 | 2 | 3 ]
8 notes · View notes
lostlibrariangirl · 1 year
Text
Tumblr media
3 January - 100 Days of Productivity - 2/100
January will be my Data Structures and Algorithms month, as I must finish this course to move on with others I set for this year.
  I am using a learning platform from Brazil called Digital Innovation One (aka DIO), once I loved the instructor - he talks about DSA with so much passion, that it is impossible to do not be excited by it.
And about the books that I am going to read this year, I started with "Thinking, Fast and Slow" by Daniel Kahneman ( "Stoic Diary" is just 1 text per day). I was looking for reading it for a long time.
24 notes · View notes
catgirlgirlcat · 6 months
Text
Cats are intangible and have no physical component, so we keep them as an activity log to maximise transfer efficiency.
6 notes · View notes
watchmorecinema · 7 months
Text
Normally I just post about movies but I'm a software engineer by trade so I've got opinions on programming too.
Apparently it's a month of code or something because my dash is filled with people trying to learn Python. And that's great, because Python is a good language with a lot of support and job opportunities. I've just got some scattered thoughts that I thought I'd write down.
Python abstracts a number of useful concepts. It makes it easier to use, but it also means that if you don't understand the concepts then things might go wrong in ways you didn't expect. Memory management and pointer logic is so damn annoying, but you need to understand them. I learned these concepts by learning C++, hopefully there's an easier way these days.
Data structures and algorithms are the bread and butter of any real work (and they're pretty much all that come up in interviews) and they're language agnostic. If you don't know how to traverse a linked list, how to use recursion, what a hash map is for, etc. then you don't really know how to program. You'll pretty much never need to implement any of them from scratch, but you should know when to use them; think of them like building blocks in a Lego set.
Learning a new language is a hell of a lot easier after your first one. Going from Python to Java is mostly just syntax differences. Even "harder" languages like C++ mostly just mean more boilerplate while doing the same things. Learning a new spoken language in is hard, but learning a new programming language is generally closer to learning some new slang or a new accent. Lists in Python are called Vectors in C++, just like how french fries are called chips in London. If you know all the underlying concepts that are common to most programming languages then it's not a huge jump to a new one, at least if you're only doing all the most common stuff. (You will get tripped up by some of the minor differences though. Popping an item off of a stack in Python returns the element, but in Java it returns nothing. You have to read it with Top first. Definitely had a program fail due to that issue).
The above is not true for new paradigms. Python, C++ and Java are all iterative languages. You move to something functional like Haskell and you need a completely different way of thinking. Javascript (not in any way related to Java) has callbacks and I still don't quite have a good handle on them. Hardware languages like VHDL are all synchronous; every line of code in a program runs at the same time! That's a new way of thinking.
Python is stereotyped as a scripting language good only for glue programming or prototypes. It's excellent at those, but I've worked at a number of (successful) startups that all were Python on the backend. Python is robust enough and fast enough to be used for basically anything at this point, except maybe for embedded programming. If you do need the fastest speed possible then you can still drop in some raw C++ for the places you need it (one place I worked at had one very important piece of code in C++ because even milliseconds mattered there, but everything else was Python). The speed differences between Python and C++ are so much smaller these days that you only need them at the scale of the really big companies. It makes sense for Google to use C++ (and they use their own version of it to boot), but any company with less than 100 engineers is probably better off with Python in almost all cases. Honestly thought the best programming language is the one you like, and the one that you're good at.
Design patterns mostly don't matter. They really were only created to make up for language failures of C++; in the original design patterns book 17 of the 23 patterns were just core features of other contemporary languages like LISP. C++ was just really popular while also being kinda bad, so they were necessary. I don't think I've ever once thought about consciously using a design pattern since even before I graduated. Object oriented design is mostly in the same place. You'll use classes because it's a useful way to structure things but multiple inheritance and polymorphism and all the other terms you've learned really don't come into play too often and when they do you use the simplest possible form of them. Code should be simple and easy to understand so make it as simple as possible. As far as inheritance the most I'm willing to do is to have a class with abstract functions (i.e. classes where some functions are empty but are expected to be filled out by the child class) but even then there are usually good alternatives to this.
Related to the above: simple is best. Simple is elegant. If you solve a problem with 4000 lines of code using a bunch of esoteric data structures and language quirks, but someone else did it in 10 then I'll pick the 10. On the other hand a one liner function that requires a lot of unpacking, like a Python function with a bunch of nested lambdas, might be easier to read if you split it up a bit more. Time to read and understand the code is the most important metric, more important than runtime or memory use. You can optimize for the other two later if you have to, but simple has to prevail for the first pass otherwise it's going to be hard for other people to understand. In fact, it'll be hard for you to understand too when you come back to it 3 months later without any context.
Note that I've cut a few things for simplicity. For example: VHDL doesn't quite require every line to run at the same time, but it's still a major paradigm of the language that isn't present in most other languages.
Ok that was a lot to read. I guess I have more to say about programming than I thought. But the core ideas are: Python is pretty good, other languages don't need to be scary, learn your data structures and algorithms and above all keep your code simple and clean.
6 notes · View notes
algoworks · 7 months
Text
Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media
Unleash the coding superheroes! 💻🚀 
In the dynamic realm of programming, data structures and algorithms emerge as our formidable superheroes, shaping the digital world one efficient line of code at a time. 🦸‍♂️💡
3 notes · View notes
Text
Today I wrote a doubly-linked list variation (in Lisp) with a data layout which can allows accessing the data as a singly-linked list (the norm in Lisp).
Forced upon me because so much of Emacs is written to only handle a handful of specific iterable data-structures.
In modern languages, where "modern" starts over a decade ago, iteration can be overloaded - most things are written to take any iterable, and any object which implements a little basic magic can do it.
But in Emacs, it's still normal to just have functions which handle only lists or a small hard-coded set of sequence types. So this is a very efficient workaround for that limitation.
I already wrote an explanation that I'm really happy with in the commit message, so you can read more over there.
This is pretty nice to have in my toolbox in itself, but it was in service of building an ordered hash table/map whose elements can also be accessed as a normal Lisp list from most recently inserted to oldest.
So now I can have things in doubly-linked lists and hash tables, and still pass them to any function which operates on a regular list without mutating it, basically for free.
5 notes · View notes
tranquilspot · 11 months
Text
John: Captchalogue smoke pellets.
Tumblr media Tumblr media
I really like the design of the captchalogue cards and desk, simple and efficient.
Ooh, I never realized that the card itself display the number of items it contents, very nice! Though I'm not sure why the three pellets one shows a ~ symbol instead of 3.
I have not much to say about this part, it's all basic tutorial grounds. Although just one moment..
Tumblr media
Yeah no not the same hue of pink.
Alrighty then, let's carry on.
John: Equip fake arms.
Tumblr media
You aren't totally sure if "EQUIP" is a verb copasetic with the abstract behavioral medium in which you dwell, but you give it a try anyway.
That's nice, throwing ideas and concepts to testing things out, eliminating for both the author and reader what isn't feasible. Also the corrector says its copacetic with a c, oops. Copacetic, medium and dwell are good words I'll give them that. Though I've gotta say it's both a shame and an interesting stance to not use any equipment for an adventure revolving around an RPG game. Not armor, no ring, no bracelet. The only slots are available and required for items and weapons, that's it. I guess considering how you can go nuts with alchemizing fancy clothes, it wouldn't make sense to limit yourself to one or three set of garments. See Meenah changing our outfit and hesitating during the Mini Strife.
Your SYLLADEX'S FETCH MODUS is currently dictated by the logic of a STACK DATA STRUCTURE. You were never all that great with data structures and you find the concept puzzling and mildly irritating.
I never even heard about data structure before reading Homestuck, I had some programing classes during my studies but the logic totally eluded me, and the prof had no time to help the newbies, so yeah I share John's confusion. It's similar to music in a way, as in its a whole new language.
But with any hope, perhaps you will advance new, more practical FETCH MODI for your SYLLADEX with a little more experience.
STACK seems like a fetch modus for people that have been fiddling with its concept for several months, between a beginner and intermediary level of modus. I feel like John have barely been gifted with a sylladex, most likely prior 4/13. Starting with ARRAY would make more sense for him, though the universe is often not fair nor fun about learning curve and life difficulty in general :/ —>
2 notes · View notes