There are a lot of problems we face in programming that deal with uncertainty, statistics, and probabilities. Unfortunately, the majority of the general-purpose languages that we use on a daily basis don’t provide a great approach to solving them.
This is particularly the case in C# with the System.Random class. The implementations of this class have been pretty poor for some time. System.Random in C# regularly leads to unexpected, buggy outcomes.
If you’re a C# fan who’s looking for new ways to use the language, then this course is for you. It proposes different approaches to improving the System.Random class, providing a number of powerful techniques that solve problems more efficiently and with fewer lines of code.
There are a lot of problems we face in programming that deal with uncertainty, statistics, and probabilities. Unfortunately, the...Show More
Content
1.
Introduction to System.Random in C#
2 Lessons
Get familiar with System.Random's limitations and its impact on C# programming.
2.
Introduction to Fixing Random
3 Lessons
Look at improvements to C#’s randomness, probability distributions, and sampling techniques.
3.
Fixing Random - Discrete Distribution
22 Lessons
Master the steps to implement and optimize discrete distributions in C#, including Bernoulli and alias methods.
4.
Fixing Random - Continuous Distribution
13 Lessons
Apply your skills to sampling and estimating expected values in continuous distributions.
5.
Conclusion
2 Lessons
Explore probabilistic programming, improved tools, and efficient techniques for estimating values.
6.
Appendix
2 Lessons
See how it works to define and generate non-uniform random data in C#.
Certificate of Completion
Showcase your accomplishment by sharing your certificate of completion.
Course Author:
Developed by MAANG Engineers
Trusted by 2.8 million developers working at companies
"These are high-quality courses. Trust me. I own around 10 and the price is worth it for the content quality. EducativeInc came at the right time in my career. I'm understanding topics better than with any book or online video tutorial I've done. Truly made for developers. Thanks"
Anthony Walker
@_webarchitect_
"Just finished my first full #ML course: Machine learning for Software Engineers from Educative, Inc. ... Highly recommend!"
Evan Dunbar
ML Engineer
"You guys are the gold standard of crash-courses... Narrow enough that it doesn't need years of study or a full blown book to get the gist, but broad enough that an afternoon of Googling doesn't cut it."
Software Developer
Carlos Matias La Borde
"I spend my days and nights on Educative. It is indispensable. It is such a unique and reader-friendly site"
Souvik Kundu
Front-end Developer
"Your courses are simply awesome, the depth they go into and the breadth of coverage is so good that I don't have to refer to 10 different websites looking for interview topics and content."
Vinay Krishnaiah
Software Developer
Hands-on Learning Powered by AI
See how Educative uses AI to make your learning more immersive than ever before.
AI Prompt
Code Feedback
Explain with AI
AI Code Mentor
Free Resources