Skip to content

Instantly share code, notes, and snippets.

View anujose1989's full-sized avatar

wishIHadWingsToFly! anujose1989

View GitHub Profile
@anujose1989
anujose1989 / HammingDistance.m
Created November 29, 2018 07:47
Hamming Distance
- (NSInteger) findHammingDistance: (NSInteger)one : (NSInteger)two {
NSInteger count = 0;
NSInteger xor = one ^ two;
while (xor) {
count += (xor & 1);
xor = xor >> 1;
}
return count;
@anujose1989
anujose1989 / HasRobotReturnedtoOrigin.m
Created November 27, 2018 05:43
RobotReturntoOrigin
-(BOOL) HasRobotReturnedToOrigin : (NSString *) path
{
NSInteger i = 0;
NSInteger verticalCounter = 0;
NSInteger horizontalCounter = 0;
while (i < path.length)
{
if ([[path substringWithRange:NSMakeRange(i, 1)] isEqualToString:@"U"])
{
verticalCounter++;
@anujose1989
anujose1989 / SortArrayByParityII.m
Created November 27, 2018 05:12
Sort Array By Parity
//Method 1
-(NSArray *) sortArrayByParityIIMethodOne : (NSMutableArray *) arr
{
NSString* temp;
NSInteger oddIndex = 1;
for (NSInteger i = 0; i < arr.count ; i=i+2)
{
temp = [arr objectAtIndex:i];
// If index is even and value not even :
if (i % 2 == 0 && [arr[i]intValue] % 2 != 0){
@anujose1989
anujose1989 / PeakIndexInAMountainarray.m
Last active November 27, 2018 05:26
Peak Index in a Mountain Array
-(NSInteger) PeakIndex : (NSArray *) A
{
for (NSInteger i = 1 ; i < A.count-1 ; i++)
{
if (([A objectAtIndex:i-1] < [A objectAtIndex:i])
&& ([A objectAtIndex:i+1] < [A objectAtIndex:i]))
{
return i;
}
}
@anujose1989
anujose1989 / ToLowerCase.m
Last active November 26, 2018 08:45
To Lower Case
-(NSString *) ToLowerCase : (NSMutableString *) inputString
{
NSInteger i = 0;
while (i < inputString.length)
{
int character = [inputString characterAtIndex:i];
if (character < 97)
{
[inputString replaceCharactersInRange:NSMakeRange(i, 1)
withString:[NSString stringWithFormat:@"%c",character+32]];
@anujose1989
anujose1989 / JewelsAndStones.m
Created November 14, 2018 00:36
Jewels And Stones
- (NSInteger) jewelCountFromStone : (NSString*) stone : (NSString*) jewel
{
NSInteger count = 0;
NSMutableDictionary *hashmap = [[NSMutableDictionary alloc]initWithCapacity:jewel.length];
for ( NSInteger i = 0; i< jewel.length; i++)
{
[hashmap setValue:[NSNumber numberWithInteger:1] forKey: [jewel substringWithRange:NSMakeRange(i,1)]];
}
for ( NSInteger i = 0 ; i <stone.length ; i++)
{
- (NSArray *) anagramMapping :(NSMutableArray *) a : (NSMutableArray *) b
{
NSMutableArray *output = [[NSMutableArray alloc]initWithCapacity:a.count];
NSMutableDictionary *hashtable = [[NSMutableDictionary alloc]init];
for (NSInteger i = 0; i < b.count ;i++)
{
[hashtable setObject:[NSNumber numberWithInteger:i] forKey:[b[i] stringValue]];
}
for (NSInteger i = 0; i < a.count ;i++)