通过定义一个C++类封装单链表这种数据结构,
封装的方法有:
1.通过输入创建单链表;
2.获取单链表的数据元素个数;
3.打印输出单链表中各个元素;
4.搜索某个元素在单链表中的位置;
5.在某个位置之后插入一个结点;
6.在某个位置删除一个节点;
7.单链表逆置;
8.单链表是否存在回环的判定;
9.单链表的升序排序;
10.两个单链表的升序合并;
11.两个单链表的降...
分类:
编程语言 时间:
2015-03-27 22:16:02
阅读次数:
212
建立长度为n的顺序表,然后将表中的数据元素逆置,即若表中原来的数据元素序列为(a0,a1,a2,…,an),则逆置后的数据元素序列为(an,an-1,an-2,…,a1,a0)。(数据类型为字符型)
Description
第一行为顺序表的长度n;
第二行为顺序表中的数据元素;
Input
输出为逆置后的顺序表
Output
1...
分类:
其他好文 时间:
2015-03-22 09:18:25
阅读次数:
234
问题如题目,首先分析,链表的反转的空间复杂度如果为常数级,那么不可能完成从堆中申请数据来完成链表的反转工作,所以问题就转化为了如何将原链表修改/拆解为逆置的链表:函数形式假定如下 voidInverse(List*&head)//////修改原链表为逆置第一种办法最简单,就是在创建一个局部变量 Li...
分类:
其他好文 时间:
2015-03-16 23:00:40
阅读次数:
191
最近学计算机软件基础,学到了线性表。下面就将线性表中最简单的顺序表的一个简单示例贴出,方便大家探讨。(以及后面对函数传参的一个小分析,其实这才是重点) 1 ////需求分析 2 //1、线性表递增有序,删除重复元素 3 //2、线性表逆置 4 //3、寻求最大值 5 6 #inclu...
分类:
其他好文 时间:
2015-03-14 06:08:45
阅读次数:
174
题意:一段数字,逆置其中两个使其递增DescriptionBeing a programmer, you like arrays a lot. For your birthday, your friends have given you an array a consisting of ndisti...
分类:
其他好文 时间:
2015-02-09 10:54:29
阅读次数:
160
java实现原数组根据下标分隔成两个子数组并且在原数组中交换两个子数组的位置,两种交换算法:前插法,逆置法
分类:
编程语言 时间:
2015-02-02 22:43:49
阅读次数:
200
题目:有一个线性表(a1,a2,a3,...,an),采用带头节点的单链表L存储,设计一个算法将其就地逆置,线性表变为(an,...a3,a2,a1)。所谓“就地”指辅助存储空间为O(1)。
解题思路:
如果是顺序存储的话,我们很容易想到解题思路,利用1个辅助变量让第1个元素与第n个元素交换,然后再利用这个辅助变量让第2个元素与第n-1个元素交换,...最后利用这个辅助变量让第...
分类:
编程语言 时间:
2015-01-16 16:48:44
阅读次数:
260
用c++语言实现的单链表基本操作,包括单链表的创建(包括头插法和尾插法建表)、结点的查找、删除、排序、打印输出、逆置、链表销毁等基本操作。IDE:vs2013具体实现代码如下:[cpp]view plaincopy#include"stdafx.h"#include#includeusingname...
分类:
编程语言 时间:
2015-01-15 10:51:56
阅读次数:
210
题目:将字符串翻转,比如输入"lavor_zl",输出“lz_roval”。
解题思路:
类似于顺序表的逆置,假设字符串长度为n,那么交换第1个与第n个字符,然后交换第2个和第n-1个字符,类似的交换其他的字符,一共交换n/2次
算法实现:
void reverseStr(char str[])
{
if(str==NULL) return;
int n=0;//用n...
分类:
其他好文 时间:
2015-01-14 09:48:08
阅读次数:
125