Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
L
Lab027
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
问题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
银宸时代
DS Lab Group
实验项目模板
Lab027
提交
50f00286
提交
50f00286
5月 20, 2019
创建
作者:
宋海霞
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
modify
上级
81c6fd0f
显示空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
36 行增加
和
36 行删除
+36
-36
Stack.c
Stack.c
+29
-29
main.c
main.c
+7
-7
没有找到文件。
Stack.c
浏览文件 @
50f00286
...
...
@@ -2,11 +2,11 @@
/*
功能:
初始化栈。
function:
Initialize the stack.
参数:
pS --
栈的指针
parameter:
pS --
The stack pointer
*/
void
InitStack
(
Stack
*
pS
)
{
...
...
@@ -14,47 +14,47 @@ void InitStack(Stack* pS)
}
/*
功能:
将元素入栈。
function:
Push elements on the stack.
参数:
pS --
栈的指针
Elem --
入栈的元素
parameter:
pS --
The stack pointer
Elem --
Pushed elements
返回值:
如果插入成功返回入栈元素的值。
如果插入失败返回 -1。
returned value:
Returns the value of the pushed element if the insert succeeds.
Returns -1 if insert fails.
*/
int
Push
(
Stack
*
pS
,
int
Elem
)
{
//
//
栈满,入栈失败。
//
Stack full, push failed.
//
if
(
MAX_STACK_LENGTH
-
1
<
pS
->
top
)
return
;
pS
->
top
++
;
pS
->
buffer
[
pS
->
top
]
=
Elem
;
//
将元素插入栈顶
pS
->
buffer
[
pS
->
top
]
=
Elem
;
//
Insert the element at the top of the stack
return
Elem
;
}
/*
功能:
将栈顶元素出栈
function:
Pop the top element of the stack
参数:
pS --
栈的指针
parameter:
pS --
The stack pointer
返回值:
如果出栈成功返回出栈元素的值。
如果出栈失败返回 -1。
returned value:
If the pop succeeds, the value of the pop element is returned.
Returns -1 if pop fails.
*/
int
Pop
(
Stack
*
pS
)
{
int
Elem
;
//
//
栈为空,出栈失败
//
The stack is empty and the pop fails
//
if
(
StackEmpty
(
pS
))
return
;
...
...
@@ -66,15 +66,15 @@ int Pop(Stack* pS)
}
/*
功能:
判断栈是否为空。
function:
Determines whether the stack is empty.
参数:
pQ --
栈的指针
parameter:
pQ --
The stack pointer
返回值:
如果栈空返回 1(真)
如果栈非空返回 0(假)
returned value:
Returns 1 if stack is empty.
Returns 0 if the stack is not empty.
*/
int
StackEmpty
(
Stack
*
pS
)
{
...
...
main.c
浏览文件 @
50f00286
#include "QuickSort.h"
Stack
stack
;
// 栈
。
用于储存分治范围
Stack
stack
;
// 栈
.
用于储存分治范围
int
main
(
int
argc
,
char
*
argv
[])
{
...
...
@@ -13,7 +13,7 @@ int main(int argc, char* argv[])
int
length
=
sizeof
(
list
)
/
sizeof
(
list
[
0
]);
//
//
初始化栈
//
Initialize the stack
//
InitStack
(
&
stack
);
...
...
@@ -32,10 +32,10 @@ int main(int argc, char* argv[])
}
/*
功能:
快速排序
。按关键字递增排序。
function:
快速排序
.按关键字递增排序.
参数:
parameter:
list -- 数组指针
left -- 分治范围(左边界)
right -- 分治范围(右边界)
...
...
@@ -43,10 +43,10 @@ int main(int argc, char* argv[])
void
QuickSort
(
int
*
list
,
int
left
,
int
right
)
{
int
temp
;
// 用于储存分区元素的临时变量
int
i
,
j
;
//
i, j 分治区域两端的游标用来调整分区范围内的数据
int
i
,
j
;
//
Cursors at both ends of the i, j divide and conquer region are used to adjust the data within the partition scope
//
// TODO:
在此添加代码
// TODO:
Add the code here
//
return
;
...
...
编写
预览
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论