GE (General Electric) Interview Question
Software DevelopersCountry: United States
Interview Type: In-Person
public class StringRotate {
public static void main(String[] args) {
String str="General Electric";
StringBuffer sb = new StringBuffer();
for(String s: str.split(" ")){
sb.append(shift(s,3));
sb.append(" ");
}
System.out.println(sb.toString());
}
public static String shift(final String input, final int shift){
if(input==null || input.length()==0){
return "";
}
int length = input.length();
int offSet = shift % length;
return input.substring(offSet,length)+input.substring(0,offSet);
}
}
def rightShift(str_var,rightS):
lst = list(str_var)
for i in range(rightS):
lst.insert(0,lst.pop())
str_right = ''.join(str(e) for e in lst)
print str_right
def leftShift(str_var,leftS):
lst = list(str_var)
for i in range(leftS):
lst.insert(len(lst) - 1,lst.pop(0))
str_left = ''.join(str(e) for e in lst)
print str_left
str_var = "rightshift"
print str_var
rightShift(str_var,2)
leftShift(str_var,2)
Python
def takeinput():
s = raw_input ("Please Enter the String :")
n = input ("Please enter 'n' :" )
n = int(n)
len1 = len(s)
if len1 <= n:
print "Shifts cannot be performed on this string!!"
s1 = leftshift(s,n)
s2 = rightshift(s,n)
return s1,s2
def leftshift(s,n):
len1 = len(s)
s1 = ''
for i in range(n,len1):
s1 = s1+s[i]
for i in range(0,n):
s1 = s1+s[i]
return s1
def rightshift(s,n):
len1 = len(s)
s2 = ''
for i in range (len1-n, len1):
s2 = s2 + s[i]
for i in range (0, len1-n) :
s2 = s2+s[i]
return s2
s1,s2 = takeinput()
print ("Left Shift on String is %s :" , s1)
print ("Right Shift on String is %s :", s2)
}
- Logan August 01, 2017