Skip to content

Instantly share code, notes, and snippets.

@ar852
ar852 / merge_dicts.py
Last active April 1, 2023 00:38
merges two dictionaries with nested dictionaries inside of them without altering either of the original dictionaries
def dict_merge(d1:dict, d2:dict, ret_dict:dict):
for k in sorted(set(d1.keys()).union(d2.keys())):
if k in d1 and k in d2:
if isinstance(d1[k], dict) and isinstance(d2[k], dict):
ret_dict[k] = {}
dict_merge(d1[k], d2[k], ret_dict[k])
else:
ret_dict[k] = d2[k]
elif k in d2:
ret_dict[k] = d2[k]
@ar852
ar852 / languages_conversion.py
Created March 5, 2023 04:45
languages --> ISO 639-1 code to language name dictionary
languages = {
'aa': 'Afar',
'ab': 'Abkhazian',
'af': 'Afrikaans',
'ak': 'Akan',
'sq': 'Albanian',
'am': 'Amharic',
'ar': 'Arabic',
'an': 'Aragonese',
'hy': 'Armenian',
@ar852
ar852 / linearIn.java
Created July 15, 2021 20:15
Solution for linearIn problem in the Array-3 java section on codingbat.com (uses only one array pass)
public boolean linearIn(int[] outer, int[] inner) {
int i=0, j=0, out, in;
while (i<outer.length && j < inner.length){
out = outer[i]; in = inner[j];
if (out<in){
i++;
}