This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Enums 1 problem (doesn't compile) | |
#[derive(Debug)] | |
enum Message { | |
// TODO: define a few types of messages as used below | |
} | |
fn main() { | |
println!("{:?}", Message::Quit); | |
println!("{:?}", Message::Echo); | |
println!("{:?}", Message::Move); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// /* | |
// Given an array of integers, return indices of the two numbers such that they add up to a specific target. | |
// You may assume that each input would have exactly one solution, and you may not use the same element twice. | |
// Example: | |
// Given nums = [2, 7, 11, 15], target = 9, | |
// Because nums[0] + nums[1] = 2 + 7 = 9, |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Roman numerals are represented by seven different symbols: I, V, X, L, C, D and M. | |
Symbol Value | |
I 1 | |
V 5 | |
X 10 | |
L 50 | |
C 100 | |
D 500 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Write a function to find the longest common prefix string amongst an array of strings. | |
If there is no common prefix, return an empty string "". | |
Example 1: | |
Input: ["flower","flow","flight"] | |
Output: "fl" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Write a function to find the longest common prefix string amongst an array of strings. | |
If there is no common prefix, return an empty string "". | |
Example 1: | |
Input: ["flower","flow","flight"] | |
Output: "fl" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
use std::cell::RefCell; | |
use std::rc::{Rc, Weak}; | |
// Implementation of a basic tree with out a cyclical reference, using strong and weak references | |
/* | |
* Every node is going to own its children, but share them so we can access each node directly | |
* to accomplish this, we make every child a Vec<T> and T is an Rc<Node> to maintain a reference count for the smart pointers | |
* We also need to be able to modify nodes that are children of other nodes | |
* to accomplish this we wrap each child Vec in RefCell<T> | |
* We also need to track who is the parent of the node |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
use std::thread; | |
use std::time::Duration; | |
fn main() { | |
// this thread will die when the main thread has ended | |
// but this spawned thread will start printing outputs while the main thread continues on | |
thread::spawn(|| { | |
for i in 1..10 { | |
println!("hi number {} from the spawned thread!", i); | |
thread::sleep(Duration::from_millis(1)); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Merge two sorted linked lists and return it as a new sorted list. The new list should be made by splicing together the nodes of the first two lists. | |
Example: | |
Input: 1->2->4, 1->3->4 | |
Output: 1->1->2->3->4->4 | |
*/ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward. | |
Example 1: | |
Input: 121 | |
Output: true | |
Example 2: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Given a 32-bit signed integer, reverse digits of an integer. | |
Example 1: | |
Input: 123 | |
Output: 321 | |
Example 2: |