个性化阅读
专注于IT技术分析

程序开发实战示例合集 | 编程范例

点击下载

本文概述

下面列出了有关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个关键字查找可能的二叉搜索树总数的程序

输入如下:

程序查找带有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

赞(0)
未经允许不得转载:srcmini » 程序开发实战示例合集 | 编程范例

评论 抢沙发

评论前必须登录!