Skip to content

Instantly share code, notes, and snippets.

View HackPoint's full-sized avatar

HackP0!nt HackPoint

  • Israel
View GitHub Profile
angular.module('ny.logger', []).provider('Logger', [function () {
var isEnabled = true;
this.enabled = function(_isEnabled) {
isEnabled = !!_isEnabled;
};
this.$get = ['$log', function($log) {
var Logger = function(context) {
this.context = context;
};
Logger.getInstance = function(context) {
export interface SortedArrayOpts {
filter?: Function;
compare?: Function | string;
unique?: boolean;
resume?: boolean;
}
export class SortedArray<T> extends Array<T> {
private readonly _filter: Function;
private readonly _compare: Function;
function romanToInt(s: string): number {
let result = 0, num = 0, prev = 0;
for (let i = s.length - 1; i >= 0; i--) {
switch(s[i]) {
case 'I': num = 1; break;
case 'V': num = 5; break;
case 'X': num = 10; break;
case 'L': num = 50; break;
case 'C': num = 100; break;
@HackPoint
HackPoint / twosum
Last active November 9, 2022 19:34
function twoSum(nums: number[], target: number): number[] {
const result = [];
for (let i = 0; i < nums.length; i++) {
for(let j = i + 1; j <= nums.length - 1; j++) {
if(target - (nums[i] + nums[j]) === 0) {
result.push(i);
result.push(j);
}
}
}
function isPalindrome(x: number): boolean {
return x.toString().split('').reverse().join('') === x.toString() ? true : false;
};
function longestCommonPrefix(strs: string[]): string {
let prefix = '""';
if(strs.length === 0) return prefix;
// sort alphabetically
strs = strs.sort();
prefix = strs[0];
for(let i = 1; i < strs.length; i++) {
while(strs[i].indexOf(prefix) !== 0) {
prefix = prefix.slice(0, prefix.length - 1);
function isValid(s: string): boolean {
const stack = [];
const bracketLookup = {
'{': '}',
'(': ')',
'[': ']',
};
for(const key of s) {
if(Object.keys(bracketLookup).includes(key)) {
class ListNode {
val: number;
next: ListNode | null;
constructor(val?: number, next?: ListNode|null) {
this.val = (val===undefined ? 0 : val);
this.next = (next===undefined ? null : next);
}
}
function mergeTwoLists(list1: ListNode | null, list2: ListNode | null): ListNode | null {
const arr = [
{ time: 1, value: 4 },
{ time: 240, value: 1 },
{ time: 760 , value: 3 },
{ time: 5650, value: 1 },
{ time: 7050, value: 7 },
{ time: 7150, value: 8 },
];
function removeElement(nums: number[], val: number): number {
const output = [];
let j =0;
for(let i = 0; i < nums.length; i++) {
if(nums[i] != val) {
nums[j++] = nums[i];
}
}
return j;