社区
C语言
帖子详情
1. 设有一个已按从大至小顺序排好的数列存放在一维数组中,现输入一个数,仍按原来的排序规律将其插入到数组中,试编程。
binggege1225
2002-09-28 08:40:39
设有一个已按从大至小顺序排好的数列存放在一维数组中,现输入一个数,仍按原来的排序规律将其插入到数组中,试编程。
...全文
3012
17
打赏
收藏
1. 设有一个已按从大至小顺序排好的数列存放在一维数组中,现输入一个数,仍按原来的排序规律将其插入到数组中,试编程。
设有一个已按从大至小顺序排好的数列存放在一维数组中,现输入一个数,仍按原来的排序规律将其插入到数组中,试编程。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
starmoonjiaozhu
2002-10-04
打赏
举报
回复
其实数据结构里有很多的排序算法。。等你学了之后再来做这个题就简单了撒!
这种问题还是只有自己看书才能解决的啊!
binggege1225
2002-10-04
打赏
举报
回复
好的,谢谢你们给我的每一个建议!
《数据结构》我才刚刚开始学,老师偏偏经常旷工,很是苦恼!
不过,我还是有些不明白!^_^
lizhongkun
2002-10-03
打赏
举报
回复
从后面开始找,a[n+1]=a[n];!!!!!!!!!!!!!!
johnmack
2002-10-03
打赏
举报
回复
随便一本《数据结构》书中都有
alexxing
2002-10-01
打赏
举报
回复
最基本的原理就是从前往后搜索,找到第一个比待插入元素小的元素,插在它前面就是了,如果没有找到更小的元素,就添加在尾部
johnmack
2002-10-01
打赏
举报
回复
看看《数据结构》的书吧!
asvaboy1980
2002-10-01
打赏
举报
回复
唉,这就是《数据结构》里的直接插入排序的方法嘛,多看看书~~
诗剑南宫
2002-10-01
打赏
举报
回复
免费提供Ebook!!
ssbelle
2002-10-01
打赏
举报
回复
我们那里打折,20就卖
诗剑南宫
2002-10-01
打赏
举报
回复
图书在版编目(CIP)数据
数据结构:C语言版/严蔚敏,吴伟民编著.-北京:清华大学出版社,1996
ISBN 7-302-02368-9
I.数... II.①严... ②吴... III.数据结构-C语言版-教材 IV. TP311.13
中国版本图书馆CIP数据核字(96)第22985号
出版者:清华大学出版社(北京清华大学学研大厦,邮编100084)
http://www.tup.tsinghua.edu.cn
责任编辑:范素珍
印 刷 者:北京市凤台丰华印刷厂
发 行 者: 新华书店总店北京发行所
开 本:787×1092 1/16 印张:21.5 字数:509千字
版 次:1997年4月第一版 2001年1月第11次印刷
书 号: ISBN 7-302-02368-9/TP.1185
印 数:317001~357000
定 价:22.00元
zomg
2002-10-01
打赏
举报
回复
vector<class T>a(10);/假设有十个
for(int i=0;i<a.size();i++)
cin>>a[i];
push_back(s);/插入s至尾部;
sort(a);
darkstar21cn
2002-10-01
打赏
举报
回复
最简单的插入排序:
int iNew;
bool b=true;
for(;n>=1 && b;n--){ //假设aOld是原来已经有序的书组,而n为数组的长度
if( aOld[n]<iNew) { //如果必要插入的元素小的话,向后移动,直至找到一个
aOld[n+1]=aOld[n]; //比他大的元素
}
else {
b=false;
}
}
aOld[n]=iNew;
nick_hero
2002-10-01
打赏
举报
回复
看数据结构。
windysys
2002-10-01
打赏
举报
回复
就是一个插入排序算法吧,找本《数据结构》,基本都有的。
ccat
2002-09-30
打赏
举报
回复
这个数组的容器用的是什么呢?代码写出来一定不一样的
如果用STL当然简单喽……
15962
2002-09-30
打赏
举报
回复
假如溢出呢?
kbsoft
2002-09-28
打赏
举报
回复
Easy!
利用直接插入排序就行
#define MAXNUM 100
#include<stdio.h>
typedef int KeyType;
typedef int DataType;
typedef struct
{ KeyType key; /* 排序码字段 */
/*DataType info; 记录的其它字段 */
}RecordNode;
typedef struct
{ RecordNode record[MAXNUM];
int n; /* n为文件中的记录个数,n<MAXNUM */
}SortObject;
void insertSort(SortObject * pvector) /* 按递增序进行直接插入排序 */
{int i, j;
RecordNode temp;
for( i = 1; i < pvector->n; i++ ) /* 依次插入记录R1, R2…Rn-1 */
{temp = pvector->record[i]; j = i-1;
while ((temp.key < pvector->record[j].key)&&(j>=0) ) /* 由后向前找插入位置 */
{pvector->record[j+1] = pvector->record[j];/* 将排序码大于ki的记录后移 */
j--;
}
if( j!=(i-1) ) pvector->record[j+1] = temp;
}
}
SortObject vector={49,38,65,97,76,13,27,49};
int main(){
int i;
vector.n=8;
insertSort(&vector);
for(i=0;i<8;i++)
printf("%d ",vector.record[i]);
return 0;
}
有
一个
从小到大
排好
序的
数
组。
现
输入
一个
数
,要求按
原来
的
规律
将它
插入
数
组
中
。
基础小白
(
一维
数
组
)输入一列已经
排好
序的
数
列
,
插入
一个
数
字,并按原
顺序
规律
输出(C语言)
输入一列已经
排好
序的
数
列
,
插入
一个
数
字,并按原
顺序
规律
输出 #include <stdio.h> #define N 5 void main() { int a[N+1],i,t,j=5; for(i=0;i<N;i++) scanf("%d",&a[i]); printf("~~~~~~\n"); scanf("%d",&t); a[N]=t; for(i=0;i<N;i++) if(a[i]>t) { j=i; break
C程序算法题一
1.输入一整
数
n,判断是否为素
数
#include<stdio.h> int main(){ int i,n; scanf("%d", &n); for(i=2;i<n;i++){ if(n%i==0){ break; } } if(i>=n){ printf("%d is a prime\n", n); }else{ printf("%d
有
一个
已经
排好
序的
数
组,要求
输入
一个
数
后,按
原来
的
排序
规律
将它
插入
数
组
中
。(C#语言)
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Cjing { class Program { static void Main(string[] args) { int[] ar.
有
一个
已经
排好
序的
数
组,今
输入
一个
数
,要求按
原来
排序
的
规律
将他
插入
数
组
中
。
/* * Copyright (c) 2012, 烟台大学计算机学院 * All rights reserved. * 作 者: 刘同宾 * 完成日期:2012 年 11 月 24 日 * 版 本 号:v1.0 * 输入描述: * 问题描述:有
一个
已经
排好
序的
数
组,今输
C语言
69,371
社区成员
243,080
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章