C語言有一個已經排好序的陣列,要求輸入一個數後,按原來的排序規律將它插入陣列中。
#include<stdio.h>
int main()
{ int a[8]={1,3,5,7,9,11,13},i,j,t,k;
scanf("%d",&t);
for(i=1;i<8;i++)
{
if(t>a[i-1]&&t<a[i])
{
for(j=7;j>i-1;j--)
a[j]=a[j-1];
a[i]=t;}
if(t==a[i])
{
for(j=7;j>i-1;j--)
a[j]=a[j-1];
a[i]=t;
}
for (i=0;i<8;i++)
printf("%d ",a[i]);
}
return 0;
}
相關推薦
C語言有一個已經排好序的陣列,要求輸入一個數後,按原來的排序規律將它插入陣列中。
#include<stdio.h> int main() { int a[8]={1,3,5,7,9,11,13},i,j,t,k; scanf("%d",&t); for(i=1;i<8;i++) { if(t>a[i-1]&am
C語言——例項039 有一個已經排好序的陣列。現輸入一個數,要求按原來的規律將它插入陣列中
第一個程式:有bug,但沒發現 /* Name: Copyright: Author: Date: 31/07/17 11:42 Description: 【程式39】題目:
有一個已經排好序的陣列。現輸入一個數,要求按原來的規律將它插入陣列中。
首先判斷此數是否大於最後一個數,然後再考慮插入中間的數的情況,插入後此元素之後的數,依次後移一個位置。 import java.util.Scanner; public class test30{ public static void main(String[
有一個已經排好序的陣列,今輸入一個數,要求按原來排序的規律將他插入陣列中。
方法一:#include<stdio.h> int main() { int a[11]={1,4,7,9,23,34,56,65,67,89}; int number,end=0,i=0,j=0,t1=0,t2=0; scanf("%d",&nu
有一個從小到大排好序的數組。現輸入一個數,要求按原來的規律將它插入數組中。
cti 分享 bre alt 技術 .cn splice 死循環 set <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></titl
ACMNO.20 C語言-插入佇列 已有一個已排好的9個元素的陣列,今輸入一個數要求按原來排序的規律將它插入陣列中。 輸入 第一行,原始數列。 第二行,需要插入的數字。
題目描述 已有一個已排好的9個元素的陣列,今輸入一個數要求按原來排序的規律將它插入陣列中。 輸入 第一行,原始數列。 第二行,需要插入的數字。 輸出 排序後的數列 樣例輸入 1 7 8 17 23 24 59 62 101 50 樣例輸出 1
已有一個排好序的陣列,今輸入一個數,要求按原來排序的規律將它插入陣列中
先來看看以下程式碼,這是其他博友的思路,這程式碼看似沒有問題,其實存在很大的BUG,當插入的目標比str[0]更小的時候就會出錯。相信仔細的人就很容易發現問題。 #include<stdio.h> int main() { int str[100]={1,3,4,5,6,7
已有一個已排好的9個元素的陣列,今輸入一個數要求按原來排序的規律將它插入陣列中。
import java.util.Scanner; public class Main { public static void main(String[] args) { &n
用python 合併兩個已經排好序的陣列 並且新陣列不能有重複的元素
'''題目一:合併兩個已經排好序的陣列思路是遍歷兩個陣列,分別比較每個元素, 將較小的新增到新的數組裡,比較完短的陣列後將長的陣列的元素直接拷貝到新陣列即可我寫完後面試官說有一個問題 就是新陣列有重複的資料 當時想的是再給新陣列排序 去掉重複陣列 他不滿意今天查了一下最佳答案
leetcode鏈表--8、merge-two-sorted-list(按順序合並兩個已經排好序的鏈表)
截圖 技術 鏈表 兩個 16px sizeof 一個 運行結果截圖 div 題目描述 Merge two sorted linked lists and return it as a new list. The new list should be made by sp
查詢兩個已經排好序的陣列的共同元素
有兩個已排序的陣列 ,怎麼遍歷一遍,取出2個相同的元素 這是一道面試題,看上去挺容易(面試時想了好久,沒做出來)。沒有在網上看到較為滿意的演算法。 下面是我的思路和程式碼,歡迎吐槽、交流、指正: 1.遍歷一次,怎麼確定遍歷的大小(次數)? a).若兩個陣列的大小相同,
合併兩個已經排好序的連結串列
struct ListNode {int val;struct ListNode *next;ListNode(int x) :val(x), next(NULL) {} }; class Solution { public: ListNode* Merge(Lis
用Java程式碼刪除一個已排好序連結串列中重複的數字
題目是:一直一個已排好序的連結串列,刪除其中重複的數字,我的想法是重新建一個連結串列,存沒有重複數字並且是已排好序的數字。 演算法思想是: 首先要考慮該連結串列是否為空或者只有一個節點 重新建立一個連結串列,將原來連結串列的頭節點設為新連結串列的頭節點,然後依次比較原來連結
c語言:有一個分數序列: 2/1+3/2+5/3+8/5+13/8+… 求出這個數列前 20 項的和
程式:#include <stdio.h>int main(){ double s=0,a=2,b=1; int t,i,n=20; //改變n的值即可求任意項的和 for (
C語言求一個序列的字典序排序
給出正整數n,則1~n這n個數可以構成n!種排列,把這些排列按照從小到大的順序(字典順序)列出,如n=3時,列出1 2 3,1 3 2,2 1 3,2 3 1,3 1 2,3 2 1 這6個排列。 字典序演算法如下: 假設這n個數的某一個排列為 P: P1 P2
C語言用陣列1. 簡單約瑟夫環問題: N個人,編號從1~N圍成一圈,輸入一個數T,從1號開始報數,報到T的人出圈;下一人又從1開始報數,下一個報到T的人出圈,輸出出圈順序。 考慮問實現約瑟夫環問題
1. 簡單約瑟夫環問題: N個人,編號從1~N圍成一圈,輸入一個數T,從1號開始報數,報到T的人出圈;下一人又從1開始報數,下一個報到T的人出圈,輸出出圈順序。 考慮問題: 報到T的人出圈,怎麼表示出圈?要麼刪除對應的標號,其他的標號前移(如果是陣列結構,要依次移動
JavaScript 編寫一個函式,要求輸入年月日時分秒,輸出該年月日時分秒的下一秒。
function time(into){ var TimeF=into.substring(0,into.length-1); var Time=TimeF.replace(/([^\u0000-\u00FF])/g,'-'); var
編寫一個函式,要求輸入年月日時分秒, 輸出該年月日時分秒的下一秒
/************************************* 編寫一個函式,要求輸入年月日時分秒, 輸出該年月日時分秒的下一秒。 如輸入2004年12月31日23時59分59秒, 則輸出2005年1月1日0時0分0秒
一個排好序的數組,找出兩數之和為x的所有組合【雙指針】
pac In const include int mes 所有 組合 兩數之和 #include <bits/stdc++.h> using namespace std; const int N = 1e6,INF = 0x3f3f3f3f; int a[N];
演算法題006 -- [將兩個排序的連結串列合併,返回一個新連結串列,返回的新連結串列也是排好序的] by java
題目 將兩個排序的連結串列合併,返回一個新連結串列,返回的新連結串列也是排好序的 程式碼 package algorithm6; public class Algorithm6 { public static void main(String[] args) {