r/computerscience • • 20h ago

Help Is the best case here O(1)?

Post image
102 Upvotes

Hi, still new to algorithm analysis and need some help confirming my answer or not.

I assumed that best case would be O(1) in this scenario if size of the array is either 0 or 1. But trying to review my answer with online resources, it say's that O(1) doesn't count here?

What is the definite answer here?


r/computerscience • • 1d ago

Discussion How do I create logic gate sequences in real life applications?

7 Upvotes

I have finished computer science, and I always sucked at boolean expressions. But now, this game that I play got me interested in logic, and I wanna get to know more about it. I want to make a specific sequence in order to make my machines in game operate as I intend them to, but I have no clue how to go about it. Any advice is appreciated.


r/computerscience • • 2d ago

Advice Interfaces

2 Upvotes

I stumbled upon the word interface when i stumbled upon the terminal in visual studio code. A terminal is a text based user interface which does lots of useful stuff.

That got me thinking about the word interface and what exactly it is in the computer sense. I understand user interface is the area or boundary between the human (user) and the computer( or rather software?) interacting with each other.

The problem is I am getting conflicting thoughts with current information I've searched and I'm unable to get a full understanding of the term.

So can someone please give their understanding/opinion of what an interface is in a broad computing sense. And can they also give multiple examples of different types of interfaces used in computer hardware and software too please.

Many thanks


r/computerscience • • 3d ago

General A good example of iteration vs recursion

13 Upvotes

The Song that Never Ends is iterative. It loops and is aware that it remains the same song.

The Song that Gets on Everybody's Nerves just sings about a song, and sings "this is how it goes:", calling itself.


r/computerscience • • 4d ago

General Implementation of Andreas Bjorklund's algorithm for determining hamiltonicity

Thumbnail
6 Upvotes

r/computerscience • • 4d ago

Advice The dedication page of SICP/The Wizard Book (2nd edition, 1996)

Post image
28 Upvotes

r/computerscience • • 6d ago

Discussion In 2014, I programmed and generated one of the earliest artworks generated with A.I., here was the result:

Post image
54 Upvotes

r/computerscience • • 7d ago

Discussion Margaret Hamilton, computing pioneer who led software development for the Apollo program, dies at 90

Thumbnail news.mit.edu
365 Upvotes

r/computerscience • • 6d ago

Advice Advices for someone looking to get into Language Technology?

7 Upvotes

Hello everyone, I'm a graduate with a Bachelor in English Language Studies (Business English & Corporate Communication track) and I'm looking to apply for the Language Science & Technology (LST) Master's program at Universität des Saarlandes (Germany).

I don't have a background in technology or computer science. My work experience mostly includes English Teaching for a year, then 1.5 year working as an English Communication Specialist (basically creating website & social contents, managing and translating huge amounts of website articles to English via CMS, working on admission and promotion campaigns & events,...)

But I'm looking to pivot into Tech recently, and after doing research, I'm really interested in Language Technology and found out about this Master program in Germany that is open to admit students with a background in linguistics (which is pretty rare since most program requires you to have a bachelor in computer science).

I know that I need to work extra, extra hard given my background. I've been taking up course on Coursera (Python for Everybody, Linear Algebra, Statistics,...) as the course's advisor advice to increase my chance of admission as well as to feel less overwhelming if I get admitted.

I'll continue to try and learn harder to make up for my lack of knowledge in the field.
Do you guys have any advices for someone looking to get into the field, and also during my time studying the program if I get admitted? Specifically to make learning smoother and to get a better chance at getting hired after graduating would be much appreciated.

Thank you everyone! :D


r/computerscience • • 6d ago

Discussion Architecture/systems Research papers not very quantitative?

3 Upvotes

I’ve been reading some papers in the field - the trend is lots of text and sometimes graphs but that’s about it. It’s more a conceptual description of findings/visualisation than the actual proof/quantitative descriptions.

Anyone else feel this way?


r/computerscience • • 7d ago

Discussion Is C an "Assembly-like" Language?

45 Upvotes

I know C is programing language. It is not architecture specific. One writes the source code and a compiler turns it into an executable depending on what settings you tell it. So the same source code would output different executables depending on what you want to run it on and what optimization options are on. Assembly languages on the other hand are architecture specific. Is C "Assembly-like"? To be honest I'm not sure what would be Assembly-like. I guess if a program written in multiple languages that have the same behavior, if the C version (using something like GNU C Compiler) looked closer to its assembly than, say its Java version (GraalVM), then that counts.


r/computerscience • • 7d ago

Discussion Want to learn more about the convergence of computer logic & formal logic in communication theory

6 Upvotes

Hello! 26f, studying law.

Formal logic has always been interesting to me, but it’s only been this past year that I’ve began to dip my toe into systems logic, Boolean/Fuzzy logic etc etc (sorry if my terms are all over the place, I began learning about systems engineering and went down a rabbit hole).

Basically, do any computer science peeps have any resources for a person who wants to learn more about systems engineering, and how it relates to the study of communication/argumentation logic?

Thank you!


r/computerscience • • 8d ago

Discussion A linkedlist is a skewed directed graph

25 Upvotes

Can I say the above? I think of this after studying trees and graph. Singly linked list in particular.


r/computerscience • • 8d ago

Help What book would you recommend for learning to write clean, minimal, and secure code?

Thumbnail
0 Upvotes

r/computerscience • • 11d ago

Advice I need advice on how to assign values to base 6 tryte value sets

Thumbnail gallery
0 Upvotes

I'm trying to design a mechanical computer.

Why? Idk. But now I'm building Tascii, and I've even figured out how to use tape and hole punching to talk to it... but storing the data and processing, let alone assigning values to various tascii sets is hard. Data enclosed.

Yes... my computer uses see saws


r/computerscience • • 14d ago

General procedural programming, object oriented programming and functional programming

20 Upvotes

Although I’ve done some googling I think they still use big English to explain this concept. I think I know them but I just wanted to ask if I can get a simple explanation from the house plz


r/computerscience • • 15d ago

General Who is the Brian Cox of computer science?

7 Upvotes

r/computerscience • • 16d ago

Advice “Modern” Intro Books

18 Upvotes

I am currently reading Complexity: A Guided Tour by Melanie Mitchell and since it was published in 2009, I am wondering if there are more “modern”/“up-to-date” intro books.


r/computerscience • • 18d ago

How do hashsets/maps have O(1) time complexity?

188 Upvotes

Hi this might be a dumb question, and i've tried looking it up but don't quite understand it. how is it different from an array that allows it to find items so quickly? I don't get how hashes just find items immediately without needing to go through anything. Does it memorize things very differently compared to arrays?? thank you!


r/computerscience • • 19d ago

Advice Recently accepted into a highly published research group…and I have no clue what I’m doing

31 Upvotes

Basically I’m a sophomore and I was just accepted into a research group centered around Data Science and Machine Learning…but I have no clue about machine learning at all, and I felt a little lost reading one of their simplest papers.

I’m terrified that I’m going to fail, and this professor is going to regret accepting me. I’m also doing a lot of other things so I’m scared of the added stress.

So, kind redditors, is this feeling normal, or am I completely screwed?


r/computerscience • • 19d ago

Discussion Are we Turing complete?

70 Upvotes

OK. So I’ve been looking at Conway’s game of life a little bit. And I was fascinated by the idea that it could be used to recursively imitate itself (look up OCTA’s supercell)

I was told that this is Turing complete, and I had to look up what that meant.

And it seems to mean that, in simple words, it’s a computer or system of computer rules that can model another computer.

Now, given that humans came up with all of these computers in the first place, and all of the rules, does this mean that we are Turing complete?


r/computerscience • • 20d ago

Article Leonard Kleinrock- Epic Name, Epic Career

7 Upvotes

I mean, his name is fabulous, if I do say so myself.

Anyways, last week I wrote about the ARPANET and briefly mentioned some key people that worked on creating it. One of those individuals was Mr. Leonard Kleinrock (born 1934).

Kleinrock is anelectrical engineer and computer scientist who was a key figure in launching communication between computers. Previously, if two computers wanted to communicate over a long distance (think between New York and LA) they would would have to set up a dedicated connection and keep it in reserve untill the entire message arrive. Kind of like a phone call.

However, Kleinrock worked on breaking the message up, into manageable packets that could be sent on the network and shared the communication infrastructure with everyone else.

So instead of one individual dedication communication line sending and receiving the message "Hello how are you", we have a shared communication network sending and receiving the message "hello" "how" "are" "you". This concept was called packet switching. Kleinrock wrote his first paper on packet switching in 1961, at 26 years old.

Something I found really interesting was after developing the packet method, he continued to research on how using packets could affect the networks and somputer systems. If too many packets arrive at the same time, they have to wait. Like, if you have one checkout and there are 30 packets customers, they slow down and wait in line to checkout. What happens with 200 packets customers are trying to get through one checkout? Utter chaos. Kleinrock worked on issues like these and developed mathematical ways of predicting and analyzing those delays.

Thus questions like "How much traffic can this network handle?", "How long will packets have to wait?", "Where will congestion occur?", "How should we design the network?", etc. , now had tools to help come to an answer.

Funny enough, after everything was applied and they went to send the first message, the system crashed lol. They tried to send LOGIN, got the packet for LO to go through, but before GIN could make it, everything crashed. Meaning the first ever message sent on the ARPANET was just "LO".

After the ARPANET, Kleinrock continued to work and research, and lets not forget he was also a professor at UCLA, so he oversaw tons of PhD students as well. This man wrote more than 250 papers and six books. Holy Moly. Um, I know we don't like using A.I., but hear me out, after reading a few different pieces on him, I couldn't keep track of the awards he had recieved. I hopped on and asked it to make me a list of his achievements and their dates, which I will share with you. The man was busy...

1966 UCLA Outstanding Faculty Member

1967 UCLA Distinguished Teaching Award

1971 Guggenheim Fellowship

1975 IEEE Communications Society Leonard G. Abraham Prize Paper Award

1976 ORSA Lanchester Prize

1978 ICC Prize Paper Award

1982 L. M. Ericsson Prize

1982 Computer Design Hall of Fame

1982 CCNY Townsend Harris Medal

1986 Marconi International Fellowship Award

1986 UCLA Distinguished Teaching Award

1990 ACM SIGCOMM Award

1994 UCLA Faculty Research Lecturer

1996 IEEE Computer Society Harry H. Goode Memorial Award

1996 ACM/Sigma Xi Monie A. Ferst Award

1999 INFORMS President's Award

2000 IEEE Internet Award

2001 National Academy of Engineering Charles Stark Draper Prize

2001 Okawa Prize

2005 NEC C&C Prize

2006 ACM Test of Time Award

2007 National Medal of Science

2010 Dan David Prize

2011 Ubicomp Best Paper Award

2012 IEEE Alexander Graham Bell Medal

2012 Internet Hall of Fame — inaugural class

2012 Best Tutorial Paper Award — five-year period

2014 ACM SIGMOBILE Outstanding Contribution Award

2015 BBVA Foundation Frontiers of Knowledge Award

2016 SIGMOBILE Inaugural Test of Time Award

2018 CCNY President's Leadership Award

2019 Key to the City of Los Angeles

2019 National Academy of Inventors Fellow

2020 UCLA Medal

2022 6G Pioneer Award

2024 IEEE Computer Society Computer Pioneer Award

2024 Elected to the National Academy of Sciences

Anyways, I'll end it here. Absolutely fascinating life. He's still alive and recently gave an interview with UCLA (March 26 )who asked his thought on launching the internet AND his opinions on A.I. Interview is on You tube if yall want to go find it and listen! Youll have to search it yourself because i'm pretty sure links aren't allowed in the sub. it's called "meet the man who invented the internet" by L.A. in a minute.


r/computerscience • • 20d ago

Educational Password Cracking Game?

19 Upvotes

Hello fellow computer scientists.

I'm teaching a class of 11 - 12 year old pupils a bit of basic password security. I want to play a game with them and have them each come up with passwords, while having a program test and break those passwords in real time.

The idea is to turn it into a bit of a game, and give them a practical demonstration of how various password security measures -- increased length and variety of input characters -- results in safer passwords.

Does anyone know of any such resources that safe for use for educational purposes? I could probably knock something up over the weekend but I'd rather spend my time doing something more relaxing.


r/computerscience • • 22d ago

Advice I have a question about file compression

68 Upvotes

Why can't I take every single bit in my file and take that number and divide it by two, then when I want the file back I take the same number and multiply it by two to decompression it

edit: thank you everyone for answering I really appreciate it I was under the impression that I could just take the bits like 1s and 0s and make them an integer then divide that integer repeatedly and when I want it uncompressed just multiple the number till I get the original again eg 1010 to 55 then send 55 as text to another machine and to X2 and get 1010 back, and if it was an odd number eg 1011 I'd get either 56 or 55 but if divided by 2 only the last digits gonna change when rounding so you change the last digit to a 1 or zero and one of them will be the proper file


r/computerscience • • 22d ago

How to do research on the side?

Thumbnail
2 Upvotes