Hands-on Problem Solving with Data Structures and Algorithms: Reservoir Sampling


Details
DESCRIPTION
This is a study group session for anyone interested in improving their understanding of data structures and algorithm through solving programming problems.
Each session will have a presentation on one data structure or algorithm explaining what kind of problems it solves, where and when to use it, and how to implement it. We'll then spend some time solving problems where that data structure or algorithm is useful. We'll then round out the evening with working on solving a random problem.
For this session, we will be studying Reservoir Sampling!
Discussion will include ways of approaching a problem, possible algorithms or solution types that might apply and some of the appropriate data structure for a given problem. We'll also discuss Big O (time and space complexity) and the trade-offs each solution has. Where appropriate we'll even try our hand at some discussion around concurrency, parallelization and scaling (but not necessarily implementations).
Another aim of the group is practice and preparation the dreaded technical interview through the "Leetcode grind". We challenge and support each other through study and practice. If you are preparing for a programming technical interview, this group is for you.
We will also ask for volunteers to research interesting algorithms/data structures/problems and present them.
WHAT TO BRING?
Coding will be done on the whiteboard or using pen and paper, but if you are more comfortable using a laptop, feel free to.
TARGET AUDIENCE
The group is language agnostic (dependent on the speaker) and is aimed at current software developers. The topics will be at the level of what is discussed in a university-level undergraduate computer science course, looking mostly at the practical side but with a bit of theory also.
SCHEDULE
19:00-19:15 Doors open
19:15 Start
19:15-19:55 Introduce the topic (an algorithm, data structure, or problem type)
19:55-20:30 Work on one or two problems that the knowledge presented
20:30-21:00 Present solutions and discuss
21:00-21:30 Try to solve a random problem and networking
21:30 End
FACILITATOR
Jean-Christian is a software developer mercilessly training himself for an eventual technical interview and doing the infamous LeetCode grind. He'd like to share what he has learned along the way.
ABOUT CODE CHRYSALIS
Code Chrysalis is a 12-week, full-time advanced coding bootcamp located in the heart of Tokyo🗼. See why we are an industry leader in technical education in Japan🗾.
We put on free workshops and events for the community, so please support us by following us on Instagram, Facebook, or Twitter!
**
To find out more about us, please go to our website: https://www.codechrysalis.io
Follow us on...
Instagram - https://www.instagram.com/codechrysalis
Facebook - https://www.facebook.com/codechrysalis
Twitter - https://www.twitter.com/codechrysalis
Blog - https://blog.codechrysalis.io/
Medium - http://medium.com/code-chrysalis
**
Code Chrysalis は東京を拠点としながらも、シリコンバレー精神を基盤にした12週間の短期集中型ソフトウェアエンジニア養成学校です。Code Chrysalis についてもっと知りたい方は:https://www.codechrysalis.io を見てみてください!
日本語版ツイッター: https://www.twitter.com/codechrysalisJP
**
Code Chrysalis will be documenting this event. Photographs, audio and/or video recorded by Code Chrysalis, or others on behalf of Code Chrysalis, at this event may include your image or likeness. By registering to attend this event, you agree that Code Chrysalis may use such recorded content for any purpose without compensation to you.

Hands-on Problem Solving with Data Structures and Algorithms: Reservoir Sampling