本文概述
下面列出了有关C, C ++, Java, C#, Python和PHP的程序或编程示例。
- 基本程序
- 数字程序
- 数组程序
- 矩阵程序
- 模式程式
- 字符串程序
- 树程序
- 单链接列表程序
- 循环链表程序
- 双链表程序
基本程序
1)计算矩形面积的程序
输入如下:
Width = 10, Height = 5
输出如下:
Area of Rectangle = Width * Height
= 10 * 5
= 50
2)计算球体体积的程序
输入如下:
Radius = 48, Pie = 3.14
输出如下:
Volume = (4.0/3.0) * pie * (radius * radius * radius);
= (4.0/3.0) * 3.14 * 48 * 48 * 48
= 463433.132812
3)查找五边形区域的程序
输入如下:
s = 13
a = 5;
输出如下:
Area of Pentagon = (5.0/2.0) * s * a
= (5.0/2.0) * 13 * 5
= 162.5
4)程序查找平行四边形的面积
输入如下:
base = 4;
height = 18;
输出如下:
Area of Parallelogram = base * height;
= 4 * 18
= 72
5)程序找到正方形的面积
输入如下:
a = 13
输出如下:
Area of Square = a2
= 132
= 169
6)程序查找球体的表面积
输入如下:
Radius = 37, Pie = 3.14
输出如下:
Volume = 4 * pie * (radius * radius);
= 4 * 3.14 * 37 * 37
= 17210.285714
7)程序查找圆锥体的体积
输入如下:
Radius = 38, Height = 35, Pie = 3.14
输出如下:
Volume = pie * radius * radius * height/3;
= 3.14 * 38 * 38 * 35/3
= 48766.666667
8)程序找到立方体的体积
输入如下:
side = 4
输出如下:
Volume of cube = side3
= 43
= 64
9)程序查找气缸体积
输入如下:
radius (r) = 38 , height (h) = 35
输出如下:
Volume of the cylinder = pie * radius2 * height
= 3.14 * 38* 38 * 35
= 146300.000000
10)计算CGPA百分比的程序
CGPA百分比为=(浮动)(9.5 *(CGPA));
输入如下:
CGPA = (Grades in all Subjects) / (Total Number of Subjects).
English = 9.1;
Hindi = 8.5;
Maths = 9.5;
Science =9.6;
SocialStudy = 8.6;
CGPA = (9.1+8.5+9.5+9.6+8.6)/(5.0);
输出如下:
CGPA percentage is = 86.070000
11)将摄氏温度转换为华氏温度的程序
华氏温度=((摄氏* 9)/ 5)+ 32
输入如下:
celsius= 12
输出如下:
Temperature in Fahrenheit = 53.6
12)将天数转换为年数的程序
输入如下:
days= 799;
输出如下:
Number of years = days / 365;
= 799 / 365
= 2
13)将华氏温度转换为摄氏温度的程序
摄氏温度=(((华氏32)* 5)/ 9
输入如下:
Fahrenheit = 54
输出如下:
Temperature in Celsius= ((54-32)*5)/9 = 12.22222
14)查找等边三角形面积的程序
输入如下:
side (a) = 5
输出如下:
Area of Equilateral Triangle = ( 1.73 * a * a) / 4
= ( 1.73 * 5 * 5) / 4
= 10.81250
15)查找三角形区域的程序
输入如下:
b = 5
h = 12
输出如下:
Area of Triangle = (b * h) / 2
= (5 * 12) / 2
= 30.0
16)程序查找直角三角形的面积
输入如下:
b = 5
h = 8
输出如下:
Area of Triangle = (b * h) / 2
= (5 * 8) / 2
= 20.0
17)程序查找矩形的周长
输入如下:
a = c = 5
b = d = 4
输出如下:
Perimeter of Rectangle = 2 * ( a + b);
= 2 * (5 + 4)
= 18.00000
18)找到简单兴趣的程序
单利=(P×R×T)/ 100
输入如下:
P = 34000, R = 30, T = 5
where P = Principal Amount, R = Rate per Annum, T = Time (years)
输出如下:
Simple Interest = 51000.000
19)程序来查找立方体的表面积
立方体的表面积= 6(a * a)
输入如下:
b = 5, h = 5
a (side) = length = breadth = height
输出如下:
Surface Area Of Cube = 6 * 5 * 5=150.00000
20)程序查找长方体的表面积
输入如下:
l= 2, w = 3, h = 5;
where l = length, w = width and h = height.
输出如下:
Surface Area OfCuboid = 2 * (l * w+ w * h + h * l)
= 2 * (2 * 3 + 3 * 5 + 5 * 2)
= 62.00000
21)查找圆柱体表面积的程序
圆柱体表面积= 2Π(r + h)
输入如下:
r = 2.0, h = 5.0
输出如下:
Surface Area of Cylinder = 2 Π (r + h)
Here, r = radius, h = height, and Π ( pie ) = 3.14
= 2 * 3.14 * ( 2.0 + 5.0)
= 44.00000
数字程序
1)核对号的程序
输入如下:
num = 175
输出如下:
11 + 72 + 53 = 1 + 49 + 125 = 175
175 is a disarium number
2)确认快乐号码的程序
输入如下:
num = 82
输出如下:
82 + 22 = 68
62 + 82 = 100
12 + 02 + 02 = 1
82 is a happy number number
3)检查哈沙德号的程序
如果一个数字可被其数字之和整除, 则称该数字为Harshad数。
输入如下:
num = 156
输出如下:
156 is a Harshad number
4)程序打印所有1至100之间的Disarium数字
输入如下:
range(1, 101)
输出如下:
Disarium numbers between 1 and 100 are: 1 2 3 4 5 6 7 8 9 89
5)程序打印所有1到100之间的快乐数字
输入如下:
range(1, 101)
输出如下:
List of happy numbers between 1 and 100: 1 7 10 13 19 23 28 31 32 44 49 68 70 79 82 86 91 94 97 100
6)程序打印1至100之间的所有Pronic数字
如果数字是两个连续数字的乘积, 则该数字被称为质子数字。
举些例子:
6 = 2 x 3
72 = 8 x 9
输入如下:
range(1, 101)
输出如下:
Pronic numbers between 1 and 100: 2 6 12 20 30 42 56 72 90
7)确定给定号码是否为不足号码的程序
8)确定给定数字是否为丰富数字的程序
9)确定给定数字是否为双素数的程序
10)程序打印所有1到100之间的大量数字
11)程序打印1至100之间的所有Kaprekar数字
12)程序打印1至100之间的所有素数
13)程序打印n个数字的平均值
14)程序打印给定数字的组合(nCr)
15)打印前10个质数的程序
16)程序打印给定数字的排列(nPr)
17)在不使用模数的情况下打印数字总和的程序
18)交换两个数字的程序
19)在不使用第三个变量的情况下交换两个数字的程序
数组程序
1)将一个数组的所有元素复制到另一个数组的程序
输入如下:
arr1 = [1, 2, 3, 4, 5];
arr2 = [None] * len(arr1);
输出如下:
Elements of original array: 1 2 3 4 5
Elements of new array: 1 2 3 4 5
2)程序查找数组中每个元素的频率
输入如下:
arr = [1, 2, 8, 3, 2, 2, 2, 5, 1]
输出如下:
Element | Frequency
1|2
2|4
8|1
3|1
5|1
3)程序向左旋转数组的元素
输入如下:
arr = [1, 2, 3, 4, 5]
Here, n determine the number of times an array should be rotated
n = 3
输出如下:
Original array: 1 2 3 4 5
Array after left rotation: 4 5 1 2 3
4)程序打印数组的重复元素
输入如下:
arr = [1, 2, 3, 4, 2, 7, 8, 8, 3];
输出如下:
Duplicate elements in given array:
2
3
8
5)程序打印数组的元素
输入如下:
arr = [1, 2, 3, 4, 5]
输出如下:
Elements of given array: 1 2 3 4 5
6)程序以相反的顺序打印数组的元素
输入如下:
arr = [1, 2, 3, 4, 5]
输出如下:
Original array: 1 2 3 4 5
Array in reverse order: 5 4 3 2 1
7)程序打印出现在偶数位置的数组元素
输入如下:
arr = [1, 2, 3, 4, 5]
输出如下:
Elements of given array present on even position:
2
4
8)程序打印出现在奇数位置的数组元素
输入如下:
arr = [1, 2, 3, 4, 5]
输出如下:
Elements of given array present on odd position:
1
3
5
9)程序打印数组中存在的最大元素
输入如下:
arr = [25, 11, 7, 75, 56]
输出如下:
Largest element present in given array: 75
10)程序打印数组中存在的元素数
输入如下:
arr = [1, 2, 3, 4, 5]
输出如下:
Number of elements present in given array: 5
11)程序打印数组中存在的最小元素
输入如下:
arr = [25, 11, 7, 75, 56]
输出如下:
Smallest element present in given array: 7
12)程序打印一个数组的所有元素的总和
输入如下:
arr = [1, 2, 3, 4, 5]
sum = 0
输出如下:
Sum of all the elements of an array: 15
13)程序右旋转数组的元素
输入如下:
arr = [1, 2, 3, 4, 5]
Here, n determine the number of times an array should be rotated
n = 3
输出如下:
Original array: 1 2 3 4 5
Array after right rotation: 3 4 5 1 2
14)程序以升序对数组的元素进行排序
输入如下:
arr = [5, 2, 8, 7, 1]
输出如下:
Elements of original array: 5 2 8 7 1
Elements of array sorted in ascending order: 1 2 5 7 8
15)程序以降序对数组的元素进行排序
输入如下:
arr = [5, 2, 8, 7, 1]
输出如下:
Elements of original array: 5 2 8 7 1
Elements of array sorted in descending order: 8 7 5 2 1
矩阵程序
1)计算2个矩阵相加的程序
输入如下:
Matrix a = [1, 0, 1]
[4, 5, 6]
[1, 2, 3]
matrix b = [1, 1, 1]
[2, 3, 1]
[1, 5, 1]
输出如下:
Addition of two matrices: [2 1 2]
[6 8 7]
[2 7 4]
2)计算2个矩阵相减的程序
输入如下:
Matrix a = [4, 5, 6]
[3, 4, 1]
[1, 2, 3]
Matrix b = [2, 0, 3]
[2, 3, 1]
[1, 1, 1]
输出如下:
Subtraction of two matrices: [2 5 3]
[1 1 0]
[0 1 2]
3)确定给定矩阵是否为单位矩阵的程序
输入如下:
Matrix a =[1, 0, 0]
[0, 1, 0]
[0, 0, 1]
输出如下:
Given matrix is an identity matrix
4)确定给定矩阵是否为稀疏矩阵的程序
输入如下:
Matrix a = [4, 0, 0]
[0, 5, 0]
[0, 0, 6]
输出如下:
Given matrix is a sparse matrix
5)确定两个矩阵是否相等的程序
输入如下:
Matrix a = [1, 2, 3]
[8, 4, 6]
[4, 5, 7]
matrix b = [1, 2, 3]
[8, 4, 6]
[4, 5, 7]
输出如下:
Matrices are equal
6)显示下三角矩阵的程序
输入如下:
Matrix a = [1, 2, 3]
[8, 6, 4]
[4, 5, 6]
输出如下:
Lower triangular matrix: [1 0 0]
[8 6 0]
[4 5 6]
7)程序显示上三角矩阵
输入如下:
Matrix a = [1, 2, 3]
[8, 6, 4]
[4, 5, 6]
输出如下:
Upper triangular matrix: [1 2 3]
[0 6 4]
[0 0 6]
8)程序查找给定矩阵中奇数和偶数的频率
输入如下:
Matrix a = [4, 1, 3]
[3, 5, 7]
[8, 2, 6]
输出如下:
Frequency of odd numbers: 5
Frequency of even numbers: 4
9)查找两个矩阵的乘积的程序
输入如下:
Matrix a = [1, 3, 2]
[3, 1, 1]
[1, 2, 2]
matrix b = [2, 1, 1]
[1, 0, 1]
[1, 3, 1]
输出如下:
Product of two matrices: [7 7 6]
[8 6 5]
[6 7 5]
10)程序查找矩阵的每一行和每一列的总和
输入如下:
Matrix a = [1, 2, 3]
[4, 5, 6]
[7, 8, 9]
输出如下:
Sum of 1 row: 6
Sum of 2 row: 15
Sum of 3 row: 24
Sum of 1 column: 12
Sum of 2 column: 15
Sum of 3 column: 18
11)查找给定矩阵的转置的程序
输入如下:
Matrix a = [1, 2, 3]
[4, 5, 6]
[7, 8, 9]
输出如下:
Transpose of given matrix: [1 4 7]
[2 5 8]
[3 6 9]
字符串程序
1)计算一个字符串中存在的标点符号总数的程序
输入如下:
char str [] = "Good Morning! Mr. James Potter. Had your breakfast?"
输出如下:
如果字符串中的任何字符与(‘!’, “, “, ” \'”, “;”, ” \””, “。”, “-“, “?”)匹配, 则将计数加1 。
Total number of punctuation characters exists in string: 4
2)计算一个字符串中元音和辅音总数的程序
输入如下:
str = "This is a really simple sentence"
输出如下:
vowels = a, e, i, o, u
consonants = b, c, d, f, g, h, j, k, l, m, n, p, q, r, s, t, v, w, x, y, z
3)确定两个字串是否是字谜的程序
输入如下:
如果两个字符串包含相同的字符, 则称它们为字谜。但是, 字符的顺序或顺序可以不同。
str1 = "Grab";
str2 = "Brag";
输出如下:
Both the strings are anagram.
4)程序将字符串分成’N’个相等的部分
输入如下:
str = "aaaabbbbcccc"
输出如下:
Equal parts of given string are
aaaa
bbbb
cccc
5)查找字符串的所有排列的程序
输入如下:
char str[] = "ABC"
输出如下:
All the permutations of the string are:
ABC
ACB
BAC
BCA
CBA
CAB
6)程序查找字符串的所有可能子集
输入如下:
str = "ABC"
输出如下:
All subsets for given string are:
A
AB
ABC
B
BC
C
7)程序查找字符串中最长的重复序列
输入如下:
str = "acbdfghybdf"
输出如下:
Longest repeating sequence: bdf
8)删除字符串中所有空格的程序
输入如下:
str1 = "Remove white spaces"
输出如下:
String after removing all the white spaces : Removewhitespaces
9)程序将大写字母替换为小写字母, 反之亦然
输入如下:
str1 = "Great Power"
输出如下:
String after case conversion : gREAT pOWER
10)用特定字符替换字符串空格的程序
输入如下:
char string[] = "Once in a blue moon"
char ch = '-'
输出如下:
String after replacing spaces with given character: Once-in-a-blue-moon
11)计算字符串中字符总数的程序
输入如下:
string = "The best of both worlds"
输出如下:
Total number of characters in a string: 19
12)计算字符串中单词总数的程序
输入如下:
sentence = "Beauty lies in the eyes of beholder"
输出如下:
Total number of words in the given string: 7
13)确定给定字符串是否为回文的程序
输入如下:
string = "Kayak"
输出如下:
Given string is palindrome.
14)确定一个字符串是否为另一个字符串的程序
输入如下:
str1 = "abcde"
str2 = "deabc"
输出如下:
Second string is a rotation of first string.
15)查找字符串中最大和最小出现字符的程序
输入如下:
string = "grass is greener on the other side"
输出如下:
Minimum occurring character: a
Maximum occurring character: e
16)查找字符串反向的程序
输入如下:
string = "Dream big"
输出如下:
Original string: Dream big
Reverse of given string: gib maerD
17)查找字符串中重复字符的程序
输入如下:
string = "Great responsibility"
输出如下:
Duplicate characters in a given string:
r
e
t
s
i
18)查找字符串中重复单词的程序
输入如下:
string = "big black bug bit a big black dog on his big black nose"
输出如下:
Duplicate words in a given string:
big
black
19)查找字符频率的程序
输入如下:
string = "picture perfect"
输出如下:
Characters and their corresponding frequencies
p-2
i-1
c-2
t-2
u-1
r-2
e-3
f-1
20)查找字符串中最大和最小单词的程序
输入如下:
string = "Hardships often prepare ordinary people for an extraordinary destiny"
输出如下:
Smallest word: an
Largest word: extraordinary
21)在文本文件中查找重复次数最多的单词的程序
输入如下:
file = open("data.txt", "r")
data.txt文件内容:
术语”计算机”源自拉丁文” computare”, 意为计算。计算机是可编程的电子设备。计算机接受原始数据作为输入, 并使用一组指令对其进行处理以产生结果作为输出。计算机的历史始于算盘的诞生, 算盘是第一台计算机。
输出如下:
Most repeated word: computer
22)在给定的文本文件中查找单词数的程序
输入如下:
file = open("data.txt", "r")
data.txt文件内容:
术语”计算机”源自拉丁文” computare”, 意为计算。计算机是可编程的电子设备。计算机接受原始数据作为输入, 并使用一组指令对其进行处理以产生结果作为输出。计算机的历史始于算盘的诞生, 算盘是第一台计算机。
输出如下:
Number of words present in given file: 117
23)在给定字符串中打印最小和最大可能的回文词的程序
输入如下:
string = "Wow you own kayak"
输出如下:
Smallest palindromic word: wow
Biggest palindromic word: kayak
24)从字符串中分离单个字符的程序
输入如下:
string = "characters"
输出如下:
Individual characters from given string: characters
25)在不使用第三个或临时变量的情况下交换两个字符串变量的程序
输入如下:
str1 = "Good";
str2 = "morning";
输出如下:
Strings before swapping: Good morning
Strings after swapping: morning Good
模式程式
1)程序打印以下图案
2)打印以下图案的程序
5432*
543*1
54*21
5*321
*4321
3)打印以下图案的程序
*000*000*
0*00*00*0
00*0*0*00
000***000
4)打印以下图案的程序
1
2 4
3 6 9
4 8 12 16
5 10 15 20 25
6 12 18 24 30 36
7 14 21 28 35 42 49
8 16 24 32 40 48 56 64
9 18 27 36 45 54 63 72 81
10 20 30 40 50 60 70 80 90 100
5)程序打印以下图案
6)程序打印以下图案
7)打印以下图案的程序
12344321
123**321
12****21
1******1
8)程序打印以下图案
9)程序打印以下图案
0
909
89098
7890987
678909876
56789098765
4567890987654
345678909876543
23456789098765432
1234567890987654321
10)程序打印以下图案
11)打印以下图案的程序
一个
B
C C C
D D D D
E E E E E
12)打印以下图案的程序
13)打印以下图案的程序
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1
14)打印以下图案的程序
15)打印以下图案的程序
16)打印以下图案的程序
17)打印以下图案的程序
1
2 3
4 5 6
7 8 9 10
18)打印以下图案的程序
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
19)打印以下图案的程序
树程序
1)计算二叉树的奇数级和偶数级节点之和的差的程序
输入如下:
输出如下:
OddLevelSum = 1 + 4 + 5 + 6 = 16
EvenLevelSum = 2 + 3 = 5
Difference = |16 - 5| = 11
2)构造二叉搜索树并执行删除和有序遍历的程序
输入如下:
输出如下:
Binary search tree after insertion: 10 30 50 60 70 90
Binary search tree after deleting node 90: 10 30 50 60 70
Binary search tree after deleting node 30: 10 50 60 70
Binary search tree after deleting node 50: 10 60 70
3)将二叉树转换为二叉搜索树的程序
输入如下:
输出如下:
Inorder representation of binary tree: 4 2 5 1 6 3 7
Inorder representation of resulting binary search tree: 1 2 3 4 5 6 7
4)确定所有叶子是否处于同一水平的程序
输入如下:
输出如下:
All leaves are at same level
5)确定两棵树是否相同的程序
输入如下:
输出如下:
Both the binary trees are identical
6)查找二叉树的最大宽度的程序
输入如下:
输出如下:
Maximum width of the binary tree: 4
7)查找二叉树中最大元素的程序
输入如下:
输出如下:
Largest element in the binary tree: 74
8)查找树的最大深度或高度的程序
输入如下:
输出如下:
Maximum height of given binary tree: 5
9)程序以查找二叉树中最大距离的节点
输入如下:
输出如下:
Nodes which are at maximum distance:
( 4, 9 )
( 5, 9 )
10)查找二叉树中最小元素的程序
输入如下:
输出如下:
Smallest element in the binary tree: 1
11)查找二叉树所有节点之和的程序
输入如下:
输出如下:
Sum of all nodes of binary tree: 31
12)用N个关键字查找可能的二叉搜索树总数的程序
输入如下:
输出如下:
Total number of possible Binary Search Trees with given key: 42
13)使用链表实现二叉树的程序
输入如下:
输出如下:
Binary tree after insertion: 1
Binary tree after insertion: 2 1 3
Binary tree after insertion: 4 2 5 1 3
Binary tree after insertion: 4 2 5 1 6 3 7
14)搜索二叉树中的节点的程序
输入如下:
在二叉树中搜索节点5
输出如下:
Element is present in the binary tree
单链接列表程序
1)单链接列表示例
输入如下:
Head Node = 100
Second Node = 200
Third Node = 300
输出如下:
100
200
300
2)创建和显示单链列表的程序
输入如下:
#Add nodes to the list
sList.addNode(1);
sList.addNode(2);
sList.addNode(3);
sList.addNode(4);
输出如下:
Nodes of singly linked list: 1 2 3 4
3)程序创建n个节点的单链接列表并计算节点数
输入如下:
#Add nodes to the list
sList.addNode(1);
sList.addNode(2);
sList.addNode(3);
sList.addNode(4);
输出如下:
Nodes of singly linked list: 1 2 3 4
Count of nodes present in the list: 4
4)程序创建n个节点的单链接列表并以相反顺序显示
输入如下:
#Add nodes to the list
sList.addNode(1);
sList.addNode(2);
sList.addNode(3);
sList.addNode(4);
输出如下:
Original List: 1 2 3 4
Reversed List: 4 3 2 1
5)程序从单链表的开头删除一个新节点
输入如下:
#Add nodes to the list
sList.addNode(1);
sList.addNode(2);
sList.addNode(3);
sList.addNode(4);
输出如下:
Original List: 1 2 3 4
Updated List: 2 3 4
Updated List: 3 4
Updated List: 4
Updated List: List is empty
6)程序从单链列表的中间删除一个新节点
输入如下:
#Add nodes to the list
sList.addNode(1);
sList.addNode(2);
sList.addNode(3);
sList.addNode(4);
输出如下:
Original List: 1 2 3 4
Updated List: 1 3 4
Updated List: 1 4
Updated List: 4
Updated List: List is empty
7)程序从单链表的末尾删除一个节点
输入如下:
#Add nodes to the list
sList.addNode(1);
sList.addNode(2);
sList.addNode(3);
sList.addNode(4);
输出如下:
Original List: 1 2 3 4
Updated List: 1 2 3
Updated List: 1 2
Updated List: 1
Updated List: List is empty
8)确定单链表是否为回文式的程序
输入如下:
#Add nodes to the list
sList.addNode(1);
sList.addNode(2);
sList.addNode(3);
sList.addNode(2);
sList.addNode(1);
输出如下:
Nodes of the singly linked list: 1 2 3 2 1
Given singly linked list is a palindrome
9)从单链表中查找最大值和最小值节点的程序
输入如下:
#Add nodes to the list
sList.addNode(5);
sList.addNode(8);
sList.addNode(1);
sList.addNode(6);
输出如下:
Minimum value node in the list: 1
Maximum value node in the list: 8
10)程序在单链表的中间插入一个新节点
输入如下:
#Adds data to the list
sList.addNode(1);
sList.addNode(2);
#Inserting node '3' in the middle
sList.addInMid(3);
#Inserting node '4' in the middle
sList.addInMid(4);
输出如下:
Original list: 1 2
Updated List: 1 3 2
Updated List: 1 3 4 2
11)在单链表的开头插入新节点的程序
输入如下:
#Adding 1 to the list
sList.addAtStart(1);
#Adding 2 to the list
sList.addAtStart(2);
#Adding 3 to the list
sList.addAtStart(3);
#Adding 4 to the list
sList.addAtStart(4);
输出如下:
Adding nodes to the start of the list: 1
Adding nodes to the start of the list: 2 1
Adding nodes to the start of the list: 3 2 1
Adding nodes to the start of the list: 4 3 2 1
12)在单链表的末尾插入一个新节点的程序
输入如下:
#Adding 1 to the list
sList.addAtEnd(1);
#Adding 2 to the list
sList.addAtEnd(2);
#Adding 3 to the list
sList.addAtEnd(3);
#Adding 4 to the list
sList.addAtEnd(4);
输出如下:
Adding nodes to the end of the list: 1
Adding nodes to the end of the list: 1 2
Adding nodes to the end of the list: 1 2 3
Adding nodes to the end of the list: 1 2 3 4
13)从单链列表中删除重复元素的程序
输入如下:
#Adds data to the list
sList.addNode(1);
sList.addNode(2);
sList.addNode(3);
sList.addNode(2);
sList.addNode(2);
sList.addNode(4);
sList.addNode(1);
输出如下:
Originals list: 1 2 3 2 2 4 1
List after removing duplicates: 1 2 3 4
14)在单链列表中搜索元素的程序
输入如下:
#Add nodes to the list
sList.addNode(1);
sList.addNode(2);
sList.addNode(3);
sList.addNode(4);
#Search for node 2 in the list
sList.searchNode(2);
#Search for the nodein the list
sList.searchNode(7);
输出如下:
Element is present in the list at the position : 2
Element is not present in the list
15)程序对单链表的元素进行排序
输入如下:
#Adds data to the list
sList.addNode(9);
sList.addNode(7);
sList.addNode(2);
sList.addNode(5);
sList.addNode(4);
输出如下:
Original list: 9 7 2 5 4
Sorted list: 2 4 5 7 9
16)程序在不交换数据的情况下交换单链列表中的节点
输入如下:
#Add nodes to the list
sList.addNode(1);
sList.addNode(2);
sList.addNode(3);
sList.addNode(4);
sList.addNode(5);
#Swaps the node 2 with node 5
sList.swap(2, 5);
输出如下:
Original list: 1 2 3 4 5
List after swapping nodes: 1 5 3 4 2
17)交换单链表中最后一个元素与第一个元素的程序
输入如下:
#Add nodes to the list
sList.addNode(1);
sList.addNode(2);
sList.addNode(3);
sList.addNode(4);
输出如下:
Originals list: 1 2 3 4
List after swapping the first node with last: 4 2 3 1
循环链表程序
1)创建N个节点的循环链表并计算节点数的程序
输入如下:
#Adds data to the list
cl.add(1);
cl.add(2);
cl.add(4);
cl.add(1);
cl.add(2);
cl.add(3);
输出如下:
Count of nodes present in circular linked list: 6
2)创建N个节点的循环链接列表并以相反顺序显示的程序
输入如下:
#Adds data to the list
cl.add(1);
cl.add(2);
cl.add(3);
cl.add(4);
cl.add(5);
cl.add(6);
输出如下:
Original List: 1 2 3 4 5 6
Reversed List: 6 5 4 3 2 1
3)创建和显示循环链接列表的程序
输入如下:
#Adds data to the list
cl.add(1);
cl.add(2);
cl.add(3);
cl.add(4);
输出如下:
Nodes of the circular linked list: 1 2 3 4
4)从循环链表的开头删除新节点的程序
输入如下:
#Adds data to the list
cl.add(1);
cl.add(2);
cl.add(3);
cl.add(4);
输出如下:
Original List:1 2 3 4
Updated List:2 3 4
Updated List:3 4
Updated List:4
Updated List: List is empty
5)从循环链接列表的末尾删除新节点的程序
输入如下:
#Adds data to the list
cl.add(1);
cl.add(2);
cl.add(3);
cl.add(4);
输出如下:
Original List:1 2 3 4
Updated List:1 2 3
Updated List:1 2
Updated List:1
Updated List: List is empty
6)从循环链接列表中间删除新节点的程序
输入如下:
#Adds data to the list
cl.add(1);
cl.add(2);
cl.add(3);
cl.add(4);
输出如下:
Original List:1 2 3 4
Updated List:1 3 4
Updated List:1 4
Updated List:4
Updated List: List is empty
7)从循环链接列表中查找最大值和最小值节点的程序
输入如下:
#Adds data to the list
cl.add(5);
cl.add(20);
cl.add(10);
cl.add(1);
输出如下:
Minimum value node in the list: 1
Maximum value node in the list: 20
8)在循环链表的开头插入新节点的程序
输入如下:
#Adding 1 to the list
cl.addAtStart(1);
#Adding 2 to the list
cl.addAtStart(2);
#Adding 3 to the list
cl.addAtStart(3);
#Adding 4 to the list
cl.addAtStart(4);
输出如下:
Adding nodes to the start of the list: 1
Adding nodes to the start of the list: 2 1
Adding nodes to the start of the list: 3 2 1
Adding nodes to the start of the list: 4 3 2 1
9)在循环链表末尾插入新节点的程序
输入如下:
#Adding 1 to the list
cl.addAtEnd(1);
#Adding 2 to the list
cl.addAtEnd(2);
#Adding 3 to the list
cl.addAtEnd(3);
#Adding 4 to the list
cl.addAtEnd(4);
输出如下:
Adding nodes to the end of the list: 1
Adding nodes to the end of the list: 1 2
Adding nodes to the end of the list: 1 2 3
Adding nodes to the end of the list: 1 2 3 4
10)在循环链表中间插入新节点的程序
输入如下:
#Adds data to the list
cl.add(1);
cl.add(2);
cl.add(3);
cl.add(4);
#Inserting node '5' in the middle
cl.addInMid(5);
#Inserting node '6' in the middle
cl.addInMid(6);
输出如下:
Original list: 1 2 3 4
Updated List: 1 2 5 3 4
Updated List: 1 2 5 6 3 4
11)从循环链接列表中删除重复元素的程序
输入如下:
#Adds data to the list
cl.add(1);
cl.add(2);
cl.add(3);
cl.add(2);
cl.add(2);
cl.add(4);
输出如下:
Originals list:1 2 3 2 2 4
List after removing duplicates:1 2 3 4
12)在循环链表中搜索元素的程序
输入如下:
#Adds data to the list
cl.add(1);
cl.add(2);
cl.add(3);
cl.add(4);
#Search for node 2 in the list
cl.search(2);
#Search for node in the list
cl.search(7);
输出如下:
Element is present in the list at the position : 2
Element is not present in the list
13)对循环链接列表的元素进行排序的程序
输入如下:
#Adds data to the list
cl.add(70);
cl.add(90);
cl.add(20);
cl.add(100);
cl.add(50);
输出如下:
Original list:70 90 20 100 50
Sorted list:20 50 70 90 100
双链表程序
1)将给定的二叉树转换为双链表的程序
输入如下:
#Add nodes to the binary tree
bt.root = Node(1);
bt.root.left = Node(2);
bt.root.right = Node(3);
bt.root.left.left = Node(4);
bt.root.left.right = Node(5);
bt.root.right.left = Node(6);
bt.root.right.right = Node(7);
输出如下:
Nodes of generated doubly linked list: 4 2 5 1 6 3 7
2)从三元树创建双向链接列表的程序
输入如下:
#Add nodes to the ternary tree
tree.root = Node(5);
tree.root.left = Node(10);
tree.root.middle = Node(12);
tree.root.right = Node(15);
tree.root.left.left = Node(20);
tree.root.left.middle = Node(40);
tree.root.left.right = Node(50);
tree.root.middle.left = Node(24);
tree.root.middle.middle = Node(36);
tree.root.middle.right = Node(48);
tree.root.right.left = Node(30);
tree.root.right.middle = Node(45);
tree.root.right.right = Node(60);
输出如下:
Nodes of the generated doubly linked list: 5 10 20 40 50 12 24 36 48 15 30 45 60
3)创建N个节点的双链表并计算节点数的程序
输入如下:
#Add nodes to the list
dList.addNode(1);
dList.addNode(2);
dList.addNode(3);
dList.addNode(4);
dList.addNode(5);
输出如下:
Nodes of doubly linked list: 1 2 3 4 5
Count of nodes present in the list: 5
4)程序创建N个节点的双链表并以相反的顺序显示
输入如下:
#Add nodes to the list
dList.addNode(1);
dList.addNode(2);
dList.addNode(3);
dList.addNode(4);
dList.addNode(5);
输出如下:
Original List: 1 2 3 4 5
Reversed List: 5 4 3 2 1
5)创建和显示双链表的程序
输入如下:
#Add nodes to the list
dList.addNode(1);
dList.addNode(2);
dList.addNode(3);
dList.addNode(4);
dList.addNode(5);
输出如下:
Nodes of doubly linked list: 1 2 3 4 5
6)从双向链接列表的开头删除新节点的程序
输入如下:
#Add nodes to the list
dList.addNode(1);
dList.addNode(2);
dList.addNode(3);
dList.addNode(4);
dList.addNode(5);
输出如下:
Original List: 1 2 3 4 5
Updated List: 2 3 4 5
Updated List: 3 4 5
Updated List: 4 5
Updated List: 5
Updated List: List is empty
7)从双向链接列表的末尾删除新节点的程序
输入如下:
#Add nodes to the list
dList.addNode(1);
dList.addNode(2);
dList.addNode(3);
dList.addNode(4);
dList.addNode(5);
输出如下:
Original List: 1 2 3 4 5
Updated List: 1 2 3 4
Updated List: 1 2 3
Updated List: 1 2
Updated List: 1
Updated List: List is empty
8)从双向链接列表中间删除新节点的程序
输入如下:
#Add nodes to the list
dList.addNode(1);
dList.addNode(2);
dList.addNode(3);
dList.addNode(4);
dList.addNode(5);
输出如下:
Original List: 1 2 3 4 5
Updated List: 1 2 4 5
Updated List: 1 4 5
Updated List: 1 5
Updated List: 5
Updated List: List is empty
9)从双向链接列表中查找最大值和最小值节点的程序
输入如下:
#Add nodes to the list
dList.addNode(5);
dList.addNode(7);
dList.addNode(9);
dList.addNode(1);
dList.addNode(2);
输出如下:
Minimum value node in the list: 1
Maximum value node in the list: 9
10)在双链表的开头插入新节点的程序
输入如下:
#Adding 1 to the list
dList.addAtStart(1);
#Adding 2 to the list
dList.addAtStart(2);
#Adding 3 to the list
dList.addAtStart(3);
#Adding 4 to the list
dList.addAtStart(4);
#Adding 5 to the list
dList.addAtStart(5);
输出如下:
Adding a node to the start of the list: 1
Adding a node to the start of the list: 2 1
Adding a node to the start of the list: 3 2 1
Adding a node to the start of the list: 4 3 2 1
Adding a node to the start of the list: 5 4 3 2 1
11)在双链表的末尾插入新节点的程序
输入如下:
#Adding 1 to the list
dList.addAtEnd(1);
#Adding 2 to the list
dList.addAtEnd(2);
#Adding 3 to the list
dList.addAtEnd(3);
#Adding 4 to the list
dList.addAtEnd(4);
#Adding 5 to the list
dList.addAtEnd(5);
输出如下:
Adding a node to the end of the list: 1
Adding a node to the end of the list: 1 2
Adding a node to the end of the list: 1 2 3
Adding a node to the end of the list: 1 2 3 4
Adding a node to the end of the list: 1 2 3 4 5
12)在双链表中间插入新节点的程序
输入如下:
#Add nodes to the list
dList.addNode(1);
dList.addNode(2);
#Adding node '3' in the middle
dList.addInMid(3);
#Adding node '4' in the middle
dList.addInMid(4);
#Adding node '5' in the middle
dList.addInMid(5);
输出如下:
Original list: 1 2
Updated List: 1 3 2
Updated List: 1 3 4 2
Updated List: 1 3 5 4 2
13)从双链表中删除重复元素的程序
输入如下:
#Add nodes to the list
dList.addNode(1);
dList.addNode(2);
dList.addNode(3);
dList.addNode(2);
dList.addNode(2);
dList.addNode(4);
dList.addNode(5);
dList.addNode(3);
输出如下:
Originals list: 1 2 3 2 2 4 5 3
List after removing duplicates: 1 2 3 4 5
14)通过N个节点旋转双链表的程序
输入如下:
#Add nodes to the list
dList.addNode(1);
dList.addNode(2);
dList.addNode(3);
dList.addNode(4);
dList.addNode(5);
输出如下:
Original List: 1 2 3 4 5
Updated List: 4 5 1 2 3
15)在双链表中搜索元素的程序
输入如下:
#Add nodes to the list
dList.addNode(1);
dList.addNode(5);
dList.addNode(4);
dList.addNode(2);
dList.addNode(3);
输出如下:
Node is present in the list at the position : 3
Node is not present in the list
16)对双链表元素进行排序的程序
输入如下:
#Add nodes to the list
dList.addNode(7);
dList.addNode(1);
dList.addNode(4);
dList.addNode(5);
dList.addNode(2);
输出如下:
Original list: 7 1 4 5 2
Sorted list: 1 2 4 5 7
评论前必须登录!
注册