1. 程式人生 > >sort對二維字元陣列排序

sort對二維字元陣列排序

程式碼一:

 #include <iostream>  
    #include <cstring>  
    #include <algorithm>  
    using namespace std;  

    struct Data  
    {  
        char data[100];   
    }str[100];  

    bool cmp(const Data &elem1, const Data &elem2)  
    {  
        if (strcmp(elem1.data, elem2.data) < 0
) return true; return false; } int main() { int n, i; while (cin>>n) { for (i=0; i<n; ++i) { cin>>str[i].data; } sort(str, str+n, cmp); for
(i=0; i<n; ++i) cout<<str[i].data<<endl; } return 0; }

利用上面的方法將將陣列放到結構體中,結構體中,這樣賦值操作符就可用了,結構體中的陣列可以進行整體賦值

程式碼二:

    bool cmp(const char *elem1, const char *elem2)  
    {  
        if (strcmp(elem1, elem2) < 0)  
            return true
; return false; } int main() { char str[100][100]; char *pStr[100] = {NULL}; int n, i; while (cin>>n) { for (i=0; i<n; ++i) { cin>>str[i]; pStr[i] = str[i]; } sort(pStr, pStr+n, cmp); for (i=0; i<n; ++i) cout<<pStr[i]<<endl; } return 0; }

這樣也可以實現對二維陣列進行排序

相關推薦

sort字元陣列排序

程式碼一: #include <iostream> #include <cstring> #include <algorithm> using namespace std;

sort陣列排序

對二維字串陣列按字典序排序:strp[i]指向str每一行的首地址。 #include <stdio.h> #include <string.h> #include <algorithm> using namespace std; co

寫個函數用來數組排序

each value 新浪 images 組元 下標 ges wid aso 29.寫個函數用來對二維數組排序(新浪) Foreach有兩種語法: 語法一:foreach($arr as $value){ Echo $value; } 語法一:foreach($ar

字元陣列賦值和字串比較

  一、賦值 1. 宣告時初始化賦值 char str[][20]={"aaa","bbb","ccc"};  2. sprintf / strcpy(#include <string.h>) char str[3][20];  sprin

[C語言]給一個字元陣列賦值的問題

我一開始是想寫一個下五子棋的程式,打算用一個字元二維陣列構造棋盤: #include <stdio.h> char a[10][10]; void p(char a[10][10]); int main(void) { int i, j; for (i =

字元陣列(C)

從鍵盤輸入若干英文單詞,所有單詞中,最大長度不超過15 個字母,請編寫程式對所有單詞按照單詞長度從大到小排序。   /** *學號:1527403059 *作業:E43 *作者:陸胤任 *日期:2015.11.29 */ #include<stdio.h>

字元陣列賦值

假設有一個二維陣列 Code: char article[3][20]={'/0'};   若要為 article[0] article[1] article[2] 賦值 Code: //article[0]={"somewords here"}; 這樣的形式是

關於C使用指標獲取字元陣列資訊

最近在完成一個專案,專案中頻繁的使用到字元二維陣列,今天就個人在實際中的經驗來總結一個比較好的使用方法,歡迎各位大神踴躍拍磚。 測試的二維陣列: char ch[][50] = { "1-2-3", "4-5-6", "7-8-9

陣列進行排序

$mess_info=get_mess($mess_infos);//獲取原始二維陣列 array_multisort(array_column($mess_info,'id'),SOTR_ASC,$mess_info);//對陣列以id為基準進行排序 $in

如何使用python來陣列進行排序

1、複合排序 直接用numpy的lexsort就可以 import numpy as np data = np.array([[1,2,3,4,5], [1,2,3,6,7], [2,3,4,5,7], [3,4,5,6,7], [4,5,6,7,8]]) idex=np.lexsort([-1*d

利用插入排序的思想陣列排序

插入排序的 應用 vector<int> vec; vector<vector<int>> vecVec; 按vec的容量從小到大對vecVec排序 void vecVecSort(vector<vector<int>>& pr

Java基礎知識複習(四)-- 陣列排序+求質數的個數

1.練習-二維陣列排序 首先定義一個5X8的二維陣列,然後使用隨機數填充滿。 藉助Arrays的方法對二維陣列進行排序。 參考思路: 先把二維陣列使用System.arraycopy進行陣列複製到一個一維陣列 然後使用sort進行排序 最後再複製回到二維陣列。 pack

如何陣列進行排序

最近做題時發現有些任務需要將二維陣列按照某一列進行排序 但JDK裡並沒有直接提供這一排序的方法 考慮自己重新寫實在太麻煩(還不一定正確/高效) 百度了一番: import java.util.Arrays; import java.util.Comparator; /

php 陣列的某個鍵的值進行排序

有時候我們需要對二維陣列的某個鍵的值進行排序,這裡就是討論這個問題。我們可以使用array_multisort()這個函式。array_multisort() 函式對多個數組或多維陣列進行排序。 引數中的陣列被當成一個表的列並以行來進行排序 - 這類似 SQL 的 OR

php陣列中某一欄位進行排序

<?php   $array = array(  array('name'=>'手機','brand'=>'諾基亞','price'=>1050),  array('name'=>'膝上型電腦','brand'=>'lenovo','pr

PHP根據某欄位陣列進行排序函式

/** * 二維陣列根據欄位進行排序 * @params array $array 需要排序的陣列 * @params string $field 排序的欄位 * @params string $sort 排序順序標誌 SORT_DESC 降序;SORT

qsort數組的排序

lib per math.h 二維 color 一個 什麽 use 結構體數組 轉自 :http://blog.csdn.net/slience_perseverance/article/details/6695048 qsort對二維數組排序與對以為數組排序是一樣的幾乎沒

PHP中如何數組按某個鍵值進行排序

取出 ria var index keyword 方式 pac plain 進行 $arr=[ array( ‘name‘=>‘張三‘, ‘age‘=>28 ), array( ‘name‘

應用結構體陣列的大小進行快排

      之前一直不會結構體,今天就簡單的學了一下,對陣列a[n][m]進行從大到小進行排序(n*m<=1e8),輸出座標,由於陣列比較大,用快排進行排序。下面就以簡單的a[3][3]為例。   #include<iostream>

C++中使用模板完成陣列的通用訪問

    定義一個二維陣列,例如:     int a[2][3] = {{1, 2, 3}, {4, 5, 6}};     要用指標的形式訪問它,需要這麼使用: int (*p)[3] =