[ 3 / biz / cgl / ck / diy / fa / g / ic / jp / lit / sci / tg / vr ] [ index / top / reports / report a bug ] [ 4plebs / archived.moe / rbt ]

Become a Patron!

/g/ - Technology

View post   

[ Toggle deleted replies ]
File: 207 KB, 1920x1080, mpv-shot0015.jpg [View same] [iqdb] [saucenao] [google] [report]
70064669 No.70064669 [Reply] [Original] [archived.moe] [rbt]

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

>> No.70064703

B Trees only.

>> No.70064717


All day errday

>> No.70064720

A circular buffer with exactly one slot.

>> No.70064740

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

>> No.70064757

hash maps

>> No.70065223

cons cells

>> No.70065247

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.

>> No.70065271

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

>> No.70065484


>> No.70065744

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

>> No.70065745
File: 5 KB, 759x169, Linkedlist.png [View same] [iqdb] [saucenao] [google] [report]

the heap

>> No.70066938

heapsort is bestsort

>> No.70066967

based and redpilled

>> No.70066974


>> No.70066981

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

A trie.

>> No.70067007

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

>> No.70067064


>> No.70067121


>> No.70067235


>> No.70067296
File: 69 KB, 1096x616, 011-5.jpg [View same] [iqdb] [saucenao] [google] [report]

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

>> No.70067391

binary search tree for me desu

>> No.70067425

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

>> No.70067435


>> No.70067974

Fuck stacks and fuck stack "languages"

>> No.70068108

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

>> No.70069751

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

>> No.70069852

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.

>> No.70069855

Linked lists are simple and elegant, and incredibly useful.

>> No.70069864

for me its the hash table

>> No.70070690

Cache misses: the data structure

>> No.70070728

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,

>> No.70070949

That's interesting. thank you for explaining

>> No.70070962

the dictionary

>> No.70071036

hash table

>> No.70071048
File: 117 KB, 469x480, 1524882207459.png [View same] [iqdb] [saucenao] [google] [report]

>bunch of basic bitch data structures

>> No.70071049


>> No.70071051

self-balancing trees are cute

>> No.70071066

Bloom filter, simply elegent

>> No.70071068

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

>> No.70071073

simple is seigi (tl note: seigi means justice)

>> No.70071080 [DELETED] 
File: 79 KB, 1280x720, Screenshots_1650_DG.jpg [View same] [iqdb] [saucenao] [google] [report]

bloom filter

>> No.70071147

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

>> No.70071243
File: 212 KB, 322x301, 1532755545190.png [View same] [iqdb] [saucenao] [google] [report]

Merkle trees

>> No.70071291
File: 176 KB, 1978x1442, explorer_2019-03-06_23-50-47.png [View same] [iqdb] [saucenao] [google] [report]

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."

>> No.70071376

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

>> No.70071514

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

>> No.70072971
File: 91 KB, 1024x1152, OwO.jpg [View same] [iqdb] [saucenao] [google] [report]


>> No.70073226

>rating azusa

>> No.70073237

Mugi>Ritsu but otherwise sure

>> No.70073243

>be me, queuebro

>> No.70073250
File: 57 KB, 754x600, yosh.jpg [View same] [iqdb] [saucenao] [google] [report]

why do we have to hide yoshi


>> No.70074778
File: 109 KB, 1280x720, serveimage (15).jpg [View same] [iqdb] [saucenao] [google] [report]

For me, it's the McChicken.

>> No.70076644


>> No.70076667

As long as Mio is first it is correct

>> No.70077555

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

>> No.70077594

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

>> No.70077974

le trie

>> No.70079115

Linked liszt

Name (leave empty)
Comment (leave empty)
Password [?]Password used for file deletion.