Skip to content

Instantly share code, notes, and snippets.

View abdulrahmanAlotaibi's full-sized avatar
🎨
Programming

Abdulrahman Alotaibi abdulrahmanAlotaibi

🎨
Programming
  • Riyadh, KSA
  • 19:31 (UTC -12:00)
View GitHub Profile
@abdulrahmanAlotaibi
abdulrahmanAlotaibi / workerPool.go
Created February 24, 2023 15:02
Creating a worker pool in Go using channel and go routines
package main
import (
"fmt"
"time"
)
func main() {
numJobs := 20
limit := numJobs * 2
@abdulrahmanAlotaibi
abdulrahmanAlotaibi / binarySearch.go
Created February 7, 2023 04:23
BinarySearchAlgorithim on sorted array
package main
import (
"fmt"
)
func main() {
fmt.Println("Hello, World!")
arr := []int{1,2,3,4}
type MinStack struct {
stack [][]int
top int
}
func Constructor() MinStack {
stack := [][]int{}
return MinStack{
stack:stack,
@abdulrahmanAlotaibi
abdulrahmanAlotaibi / ringbuffer.go
Created December 23, 2022 22:47
Ring Buffer / Circular Queue
type MyCircularQueue struct {
size int
head int
queue []int
}
func Constructor(k int) MyCircularQueue {
queue := make([]int, k)
size := 0
@abdulrahmanAlotaibi
abdulrahmanAlotaibi / isSymmetric.go
Created December 15, 2022 23:36
Tree: Symmetric Tree
/**
* Definition for a binary tree node.
* type TreeNode struct {
* Val int
* Left *TreeNode
* Right *TreeNode
* }
*/
func isSymmetric(root *TreeNode) bool {
@abdulrahmanAlotaibi
abdulrahmanAlotaibi / maxDepth.go
Created December 15, 2022 23:35
Trees : Maximum Depth of Binary Tree
/**
* Definition for a binary tree node.
* type TreeNode struct {
* Val int
* Left *TreeNode
* Right *TreeNode
* }
*/
type t struct {
@abdulrahmanAlotaibi
abdulrahmanAlotaibi / hasCycle.go
Created December 15, 2022 23:34
Linkedlists : Linked List Cycle
/**
* Definition for singly-linked list.
* type ListNode struct {
* Val int
* Next *ListNode
* }
*/
func hasCycle(head *ListNode) bool {
dummy := head
@abdulrahmanAlotaibi
abdulrahmanAlotaibi / isPalindrome.go
Created December 15, 2022 23:34
Linkedlist Palindrome Linked List
/**
* Definition for singly-linked list.
* type ListNode struct {
* Val int
* Next *ListNode
* }
*/
func isPalindrome(head *ListNode) bool {
dummy := &ListNode{
@abdulrahmanAlotaibi
abdulrahmanAlotaibi / reverseList.go
Last active December 15, 2022 23:33
Linkedlist Reverse Linked List
/**
* Definition for singly-linked list.
* type ListNode struct {
* Val int
* Next *ListNode
* }
*/
func reverseList(head *ListNode) *ListNode {
dummy := head
var prev *ListNode
@abdulrahmanAlotaibi
abdulrahmanAlotaibi / removeNthFromEnd.go
Created December 15, 2022 23:32
Linkedlist: Remove Nth Node From End of List
/**
* Definition for singly-linked list.
* type ListNode struct {
* Val int
* Next *ListNode
* }
*/
func removeNthFromEnd(head *ListNode, n int) *ListNode {
dummy := &ListNode{}