What's your favorite data structure? For me, it's the stack

What's your favorite data structure? For me, it's the stack.

Attached: mpv-shot0015.jpg (1920x1080, 207K)

B Trees only.

Arrays

All day errday

A circular buffer with exactly one slot.

signed logic vector, bit manipulation is fun

second place goes to memory arrays, initializing them with generics and having them feed back info in the waveform is always satisfying

hash maps

cons cells

Anything with contiguous backing store really.
Making prefetcher aware code is literally the best thing, it's like having an additional cache level which has infinite capacity.

For practical purposes? Dynamic arrays are fun and useful.
For academic wankery and elegance? Btrees made from cons cells.

Blockchains

>initializing them with generics and having them feed back info in the waveform is always satisfying
how do you accomplish this?

the heap

Attached: Linkedlist.png (759x169, 5K)

heapsort is bestsort

based and redpilled

Recursion

Why did you post a linked list?
Also there is a difference between "the heap" and "a heap".

A trie.

For me, it's the red/black tree.

CBUF.h

/thread

mio>azusa>ritsu>=mugi>yui

Nested list of lists with elements of the lists recursively referring to and indexing other elements in the lists in the list.

Attached: 011-5.jpg (1096x616, 69K)

binary search tree for me desu

i know you're memeing but why would you even think of this?

Futures

Fuck stacks and fuck stack "languages"

>i know you're memeing
What makes you think so?

that does not sound very intuitive or accessible. software should aim for simplicity if possible

Tell that to the literal pajeet whose work feel on me after he fucked back of to whatever open air sewer he came from.
At least I'm halfway through refactoring it. On my own initiative and sometimes in my free time, because this shit is really fucking unbearable.

Linked lists are simple and elegant, and incredibly useful.

for me its the hash table

Cache misses: the data structure

I make a vhdl entity file for the memory defined with a generic variable WIDTH for the amount of bits in an address, and DEPTHBITS for the number of bits in the address, which allows for 2**DEPTHBITS memory locations.

When you initialize a component in another entity in VHDL, you can specify the value for the generics, i.e. you can specify you want 256x8bit, 1024x32bit, anything you want. It's satisfying to just use memblocks in projects that you built yourself, you could just use the local FPGA board memories but then it's harder to port across projects and use generally.

I'm using it right now to store 256 8-bit amplitude values for an ADSR amplitude modulator in a synthesizer, it's a great way to store algorithm data in a lookup table instead of having a circuit calculate it for you on each clock cycle,

That's interesting. thank you for explaining

the dictionary

hash table

>bunch of basic bitch data structures

Attached: 1524882207459.png (469x480, 117K)

anime

self-balancing trees are cute

Bloom filter, simply elegent

DNA
>his blood doesn't contain RSA-encrypted loli hentai

simple is seigi (tl note: seigi means justice)

bloom filter

Attached: Screenshots_1650_DG.jpg (1280x720, 79K)

no problem, HDL languages like Verilog and VHDL are really different beasts, modelling languages need a different frame of thought, since your code is being synthesized down to actual logic gates and signals instead of machine logic

that said, hardware design has taught me more than most of my programming courses have, building datapaths, RAM/ROM, schedulers, arbitors, etc. really helped me understand the really basic processes and functions of an operating system and the way it interfaces with the hardware.

the negative is that I've fallen behind in terms of higher-level stuff like OOP, and a lot of the coding structures and strategies I use with HDL end up confusing me when working more abstractly. For example, when working with strings, floats and interfaces between processes and threads in Java, you don't have to worry about speed in terms of clock periods, micromanaging signal bits or reducing code area or time delay to the same degree. The furthest up I have any mild expertise in anymore is probably C, I mostly work with VHDL and ASM, probably to the detriment of my career prospects out of university

Merkle trees

Attached: 1532755545190.png (322x301, 212K)

I think it's pretty cool. The things you're talking about are a different world for me. I'm also a uni student, but I've so far focused mainly on OOP and data strucutres in c++. One of my goals for self-study in the near future is to really dive into low-level programming and computer design. I actually just grabbed these books the other day upon recommendation in a thread here.
>probably to the detriment of my career prospects out of university
If you have such a passion for that kind of programming, you could probably develop your proficiency in C and go straight into an embedded systems position out of school. Supposedly that field is growing right now because of the rise of the "internet of things."

Attached: explorer_2019-03-06_23-50-47.png (1978x1442, 176K)

fingers crossed, I'm applying for an FPGA debugging internship aoon, and I'm hoping I can get my foot in to a boomercore industry. I cam do basic C stuff, but often I find myself translating up from machine code when I'm trying to wrap my head around some of the concepts. C is fun though, otherwise I learned Java, some Python and SQL for my software design courses, since Comp Eng is sort of a hybrid between Software Engineering and Electrical Engineering at my university.

If you're interested, I would say start off looking at the operation and design of simple logic elements like Flipflops, registers, Multiplexers, Decoders and the like. Then look at State Machine design, mainly ASMS and FSMs, which are similar to the UML state diagrams you've maybe covered in higher-level software courses. Then, I'd say look into single and multi-cycle processors and their datapaths, which will lead into microcode and LUT design. I'd tell you more, but that's about the level I'm at right now, so I have no advice past that.

Assembly has charm in the fact that the actual mechanisms are really, really basic, it's about building up complex tasks by just moving dtaa between registers and memory locations. It's also really good for making yourself seem smarter than you actually are for impressing CS kids that are way more competent than you

thanks for the tips, I'll definitely keep them in mind. best of luck to you

Hideyoshi!

Attached: OwO.jpg (1024x1152, 91K)

>rating azusa

Mugi>Ritsu but otherwise sure

>be me, queuebro

why do we have to hide yoshi

mio>ritsu>mugi>=azusa>yui

Attached: yosh.jpg (754x600, 57K)

For me, it's the McChicken.

Attached: serveimage (15).jpg (1280x720, 109K)

bump

As long as Mio is first it is correct

>What's your favorite data structure?
dvd's with a film on them

Collection
linked list when I'm trying to make custom stacks or queues.

le trie

Linked liszt