Skip to content

Commit 259e021

Browse files
Merge pull request fnplus#305 from hp250497/master
to find first N pure numbers
2 parents 1bc4b33 + e78e39f commit 259e021

File tree

2 files changed

+167
-29
lines changed

2 files changed

+167
-29
lines changed
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
import java.io.*;
2+
import java.util.*;
3+
4+
public class PerfectNumber {
5+
6+
public static boolean isPalindrome(int n)
7+
{
8+
// if divisible by 11 then true
9+
if (n % 11 == 0)
10+
{
11+
return true;
12+
}
13+
14+
// if not divisible by 11
15+
return false;
16+
}
17+
public static void main(String args[]) {
18+
int i,n,j,flag,number;
19+
Scanner in = new Scanner(System. in);
20+
System.out.println("Input number ");
21+
i = in.nextInt();
22+
23+
24+
for(n=10;n<=i;n++)
25+
{
26+
int l=Integer.toString(n).length();
27+
if(l%2==0){
28+
flag=1;
29+
number=n;
30+
while(number>0)
31+
{
32+
33+
int digit = number % 10;
34+
if(!(digit==4 || digit==5))
35+
{
36+
flag=0;
37+
}
38+
number=number/10;
39+
40+
}
41+
if(flag==1)
42+
{
43+
44+
45+
boolean num=isPalindrome(n);
46+
47+
if(num)
48+
{
49+
System.out.println(n);
50+
}
51+
}
52+
}
53+
54+
55+
}
56+
57+
58+
}
59+
}

Data Structures/Queue/Python/queue.py

Lines changed: 108 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,110 @@
1-
class Queue:
1+
## ARRAY IMPLEMENTATION OF QUEUE ##
2+
3+
class ArrayQueue:
4+
def __init__(self, capacity):
5+
self.front = -1
6+
self.rear = -1
7+
self.capacity = capacity
8+
self.arr = [0 for i in range(self.capacity)]
9+
10+
def Enqueue(self, data):
11+
if self.rear + 1 == self.capacity:
12+
print("Can't Insert Queue is Full")
13+
return
14+
if self.front == -1:
15+
self.front = 0
16+
self.rear += 1
17+
self.arr[self.rear] = data
18+
print("Inserted ", data)
19+
return
20+
21+
def Dequeue(self):
22+
if self.front == -1:
23+
print("Can't Delete Queue is Empty")
24+
return
25+
print("Element deleted is ", self.arr[self.front])
26+
self.front += 1
27+
28+
if self.front > self.rear:
29+
self.front = -1
30+
self.rear = -1
31+
32+
def Display(self):
33+
if self.front == -1:
34+
print("Queue is Empty")
35+
return
36+
for i in range(self.front, self.rear + 1, 1):
37+
print(self.arr[i], end = " ")
38+
print()
39+
40+
## LINKED LIST IMPLEMENTATION OF QUEUE ##
41+
42+
class Node:
43+
def __init__(self, data):
44+
self.data = data
45+
self.next = None
46+
47+
class LLQueue:
248
def __init__(self):
3-
self.items = []
4-
5-
def is_empty(self):
6-
return self.items == []
7-
8-
def enqueue(self, data):
9-
self.items.append(data)
10-
11-
def dequeue(self):
12-
return self.items.pop(0)
13-
14-
15-
q = Queue()
16-
while True:
17-
print('enqueue <value>')
18-
print('dequeue')
19-
print('quit')
20-
do = input('What would you like to do? ').split()
21-
22-
operation = do[0].strip().lower()
23-
if operation == 'enqueue':
24-
q.enqueue(int(do[1]))
25-
elif operation == 'dequeue':
26-
if q.is_empty():
27-
print('Queue is empty.')
49+
self.front = None
50+
self.rear = None
51+
52+
def Enqueue(self, data):
53+
data_node = Node(data)
54+
if self.rear == None:
55+
self.front = data_node
56+
self.rear = data_node
2857
else:
29-
print('Dequeued value: ', q.dequeue())
30-
elif operation == 'quit':
31-
break
58+
self.rear.next = data_node
59+
self.rear = data_node
60+
print("Inserted ", data)
61+
return
62+
63+
def Dequeue(self):
64+
if self.front == None:
65+
print("Can't Delete. Queue is Empty")
66+
return
67+
node_value = self.front.data
68+
self.front = self.front.next
69+
if self.front == None:
70+
self.rear = None
71+
print("Deleted ", node_value)
72+
73+
def Display(self):
74+
if self.front == None:
75+
print("Queue is Empty")
76+
return
77+
it = self.front
78+
while it != None:
79+
print(it.data, end = " ")
80+
it = it.next
81+
print()
82+
83+
if __name__ == "__main__":
84+
queue = ArrayQueue(6)
85+
queue.Enqueue(2)
86+
queue.Enqueue(3)
87+
queue.Enqueue(4)
88+
queue.Enqueue(5)
89+
queue.Enqueue(6)
90+
queue.Display() #Output: 2 3 4 5 6
91+
queue.Dequeue()
92+
queue.Dequeue()
93+
queue.Dequeue()
94+
queue.Dequeue()
95+
queue.Dequeue()
96+
queue.Display() #Output: Queue is Empty
97+
queue = LLQueue()
98+
queue.Enqueue(2)
99+
queue.Enqueue(3)
100+
queue.Enqueue(4)
101+
queue.Enqueue(5)
102+
queue.Enqueue(6)
103+
queue.Display() #Output: 2 3 4 5 6
104+
queue.Dequeue()
105+
queue.Dequeue()
106+
queue.Dequeue()
107+
queue.Dequeue()
108+
queue.Dequeue()
109+
queue.Display() #Output: Queue is Empty
110+

0 commit comments

Comments
 (0)