精华内容
下载资源
问答
  • 2019-06-09 22:23:31
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    //比较一组字符串数组的大小,并且从中找出最大值和次大值
    void big(char **p, int N, char **p1, char **p2) {
    	*p1 = strcmp(p[0], p[1]) > 0 ? p[0] : p[1];
    	*p2 = strcmp(p[0], p[1]) < 0 ? p[0] : p[1];
    	int i;
    	for (i = 2; i < N; i++) {
    		if (strcmp(*p1, p[i]) < 0) {
    			*p1 = p[i];
    			*p2 = *p1;
    		}
    		else if (strcmp(*p2, p[i]) < 0) {
    			*p2 = p[i];
    		}
    	}
    
    }
    int main() {
    	char *b[5] = { "zhousi","chang'e","erlangshen","weinasi","liubei" };//指针数组
    	char *big1;
    	char *big2;
    	big(b, 5, &big1, &big2);
    	puts(big1);//zhousi
    	puts(big2);//weinasi
    	return 0;
    }

     

    更多相关内容
  • 主要介绍了JAVA得到数组中最大值和最小值的简单实例,需要的朋友可以参考下
  • 字符串数组中最大长度的字符串: 实质就是比较字符串的长度; 方案一: 1 class Program 2 { 3 static void Main(string[] args) 4 { 5 string[] array = {"张三","亲,今天购物了么!","明天...

    求字符串数组中最大长度的字符串:

    实质就是比较字符串的长度;

    方案一:

     1  class Program
     2     {
     3         static void Main(string[] args)
     4         {
     5             string[] array = {"张三","亲,今天购物了么!","明天你喜欢很久的人要结婚了,你怎么办!","老鼠爱上了猫!","明天会下雪吧!"};
     6            string str= GetLength(array);
     7             Console.WriteLine("最长字符串是:{0}",str);
     8             Console.ReadKey();
     9         }
    10         /// <summary>
    11         /// 获取最长字符串
    12         /// </summary>
    13         /// <param name="array"></param>
    14         /// <returns></returns>
    15         private static string GetLength(string[] array)
    16         {
    17            string str =string.Empty;
    18             for (int i = 0; i < array.Length; i++)
    19             {
    20                 if (str.Length<array[i].Length)
    21                 {
    22                     str = array[i];
    23                 }
    24             }
    25             return str;
    26 
    27         }
    28     }
    View Code

     方案二:

    使用冒泡排序的方法:

     1  class Program
     2     {
     3         static void Main(string[] args)
     4         {
     5             string[] array = { "张三", "亲,今天购物了么!", "明天你喜欢很久的人要结婚了,你怎么办!", "老鼠爱上了猫!", "明天会下雪吧!" };
     6             string str = GetLength(array);
     7             Console.WriteLine("最长字符串是:{0}", str);
     8             Console.ReadKey();
     9         }
    10         /// <summary>
    11         /// 使用冒泡排序法
    12         /// </summary>
    13         /// <param name="array"></param>
    14         /// <returns></returns>
    15         private static string GetLength(string[] array)
    16         {
    17             for (int i = 0; i < array.Length-1; i++)
    18             {
    19                 for (int j = 0; j < array.Length-1-i; j++)
    20                 {
    21                     string temp = string.Empty;
    22                     if (array[j].Length<array[j+1].Length)
    23                     {
    24                         temp = array[j];
    25                         array[j] = array[j + 1];
    26                         array[j + 1] = temp;
    27                     }
    28                 }
    29 
    30             }
    31             return array[0];
    32 
    33         }
    34     }
    View Code

     其实两种方法很类似,第一种效率相对高,可以使用Stopwatch测试。

    转载于:https://www.cnblogs.com/zlp520/p/3551984.html

    展开全文
  • 1、【题目】:编写函数查找字符串数组中的最长公共前缀,如果不存在公共前缀,返回空字符串 2、【测试用例】: (1)输入:[“flower”, “flow”, “flight”] 输出:“fl” (2)输入:[“dog”, “racecar”, ...

    1、【题目】:编写函数查找字符串数组中的最长公共前缀,如果不存在公共前缀,返回空字符串

    2、【测试用例】:
    (1)输入:[“flower”, “flow”, “flight”]
    输出:“fl”
    (2)输入:[“dog”, “racecar”, “car”]
    输出:“”
    (3)输入:[‘a’]
    输出:‘a’
    (4)输入:[“flower”,“flower”,“flower”,“flower”]
    输出:“flower”
    (5)输入:[“a”, “b”]
    输出:“”
    (6)输入:“”
    输出:“”

    3、【解题思路】:
    (1)将字符串数组按照字符串长度排序,str.sort(key = len),默认升序,str[0]即长度最短字符串;
    (2)设置一个空字符串变量result,用来存储公共前缀;
    (3)依次遍历每个字符串中的字符是否和str[0]相同位置的字符相等,如果相等就result赋值为该字符,否则返回result;
    (4)适配用例(3)(5),如果数组只有一个字符串值,返回该值;如果数组中每个值长度都为1,返回result;

    4、【代码实现】:
    def longestcommonprefix(strs):
    strs.sort(key = len)
    if not strs:
    return “”
    if len(strs) == 1:
    return strs[0]
    result = “”
    len_min = len(strs[0])
    for i in range(len_min):
    for j in strs[1:]:
    if strs[0][i] != j[i]:
    return result
    result += strs[0]
    return result

    5、【算法复杂度】:
    时间复杂度:
    空间复杂度:

    展开全文
  • MATLAB字符串数组

    2021-04-18 07:16:36
    4.1.1 字符串入门【 * 例 4.1.1 -1 】先请读者实际操作本例,以体会数值量与字符串的区别。clear %清除所有内存变量a=12345.6789 % 给变量 a 赋数值标量class(a) % 对变量 a 的类别进行判断a_s=size(a) % 数值数组 a...

    4.1.1 字符串入门

    【 * 例 4.1.1 -1 】先请读者实际操作本例,以体会数值量与字符串的区别。

    clear %清除所有内存变量

    a=12345.6789 % 给变量 a 赋数值标量

    class(a) % 对变量 a 的类别进行判断

    a_s=size(a) % 数值数组 a 的“大小”

    a =1.2346e+004

    ans =

    double

    a_s =

    1 1

    b='S' %给变量 b 赋字符标量(即单个字符)

    class(b) % 对变量 b 的类别进行判断

    b_s=size(b) % 符号数组 b 的“大小”

    b =S

    ans =

    char

    b_s =

    1 1

    whos %观察变量 a,b 在内存中所占字节

    Name Size Bytes Class

    a 1x1 8 double array

    a_s 1x2 16 double array

    ans 1x4 8 char array

    b 1x1 2 char array

    b_s 1x2 16 double array

    Grand total is 10 elements using 50 bytes

    4.1.2 串数组的属性和标识

    【 * 例 4.1.2 -1 】本例演示:串的基本属性、标识和简单操作。

    (1)创建串数组

    a='This is an example.'a =This is an example.

    (2)串数组 a 的大小

    size(a)ans =1 19

    (3)串数组的元素标识

    a14=a(1:4) %提出一个子字符串

    ra=a(end:-1:1) % 字符串的倒排

    a14 =This

    ra =

    .elpmaxe na si sihT

    (4)串数组的 ASCII 码

    ascii_a=double(a) %产生 ASCII 码

    ascii_a =Columns 1 through 12

    84 104 105 115 32 105 115 32 97 110 32 101

    Columns 13 through 19

    120 97 109 112 108 101 46

    char(ascii_a) %把 ASCII 码变回字符串

    ans =This is an example.

    (5)对字符串 ASCII 码数组的操作

    %使字符串中字母全部大写

    w=find(a>='a'&a<='z'); % 找出串数组 a 中,小写字母的元素位置。

    ascii_a(w)=ascii_a(w)-32; % 大小写字母 ASCII 值差 32. 用数值加法改变部分码值。

    char(ascii_a) % 把新的 ASCII 码翻成字符

    ans =THIS IS AN EXAMPLE.

    (6)中文字符串数组

    A='这是一个算例。 '; % 创建中文字符串

    A_s=size(A) % 串数组的大小

    A56=A([5 6]) % 取串的子数组

    ASCII_A=double(A) % 获取 ASCII 码

    A_s =1 7

    A56 =

    算例

    ASCII_A =

    Columns 1 through 6

    54754 51911 53947 47350 52195 49405

    Column 7

    41379

    char(ASCII_A) %把 ASCII 码翻译成字符

    ans =这是一个算例。

    (7)创建带单引号的字符串

    b='Example ''4.1.2 -1'''

    b =Example ' 4.1.2 -1'

    (8)由小串构成长串

    ab=[a(1:7),' ',b,' .'] %这里第 2 个输入为空格串

    ab =This is Example ' 4.1.2 -1' .

    4.1.3 复杂串数组的创建

    4.1.3.1 多行串数组的直接创建

    【 * 例 4.1.3 .1-1 】多行串数组的直接输入示例。

    clearS=['This string array '

    'has multiple rows.']

    S =This string array

    has multiple rows.

    size(S)ans =18

    4.1.3.2 利用串操作函数创建多行串数组

    【 * 例 4.1.3 .2-1 】演示:用专门函数 char , str2mat , strvcat 创建多行串数组示例。

    S1=char('This string array','has two rows.')S1 =This string array

    has two rows.

    S2=str2mat('这 ',' 字符 ',' 串数组 ',' 由 4 行组成 ')

    S2 =这

    字符

    串数组

    由4 行组成

    S3=strvcat('这 ',' 字符 ',' 串数组 ',' ',' 由 4 行组成 ')% “空串”会产生一个空格行

    S3 =这

    字符

    串数组

    由 4 行组成

    size(S3)ans =5 5

    【*例4.1.3 .2-1】的补充

    (1)创建一个二维字符数组animal

    >> Animal=[‘dog’;’monkey’];

    ??? Error using ==> vertcat

    CAT arguments dimensions are not consistent.

    >> Animal=['dog';'monkey']; %创建成功

    说明:创建二维字符数组时,字符数组要求每行字符含有相同的列。当多行字符串具有不同长度时,为了避免出现错误,用户需要在较短的字符串中添加空格,以便保证较短字符串与最长字符串等长。

    (2)用char函数创建字符数组,该方法不需要所有字符串等长

    >> Animal = char(‘dog’,’monkey’);

    4.1.3.3 转换函数产生数码字符串

    【 * 例 4.1.3 .3-1 】最常用的数组 / 字符串转换函数 int2str , num2str , mat2str 示例。

    (1) int2str 把整数数组转换成串数组(非整数将被四舍五入园整后再转换)

    A=eye(2,4); %生成一个

    19_clip_image002.gif数值数组

    A_str1=int2str(A) % 转换成

    19_clip_image004.gif串数组。请读者自己用 size 检验。

    A_str1 =1 0 0 0

    0 1 0 0

    (2) num2str 把非整数数组转换为串数组(常用于图形中,数据点的标识)

    rand('state',0)B=rand(2,4); % 生成数值矩阵

    B3=num2str(B,3) % 保持 3 位有效数字,转换为串

    B3 =0.95 0.607 0.891 0.456

    0.231 0.486 0.762 0.0185

    (3) mat2str 把数值数组转换成输入形态的串数组(常与 eval 指令配用)

    B_str=mat2str(B,4) %保持 4 位有效数字,转换为“数组输入形式”串

    B_str =[0.9501 0.6068 0.8913 0.4565;0.2311 0.486 0.7621 0.0185]

    Expression=['exp(-',B_str,')']; %相当于指令窗写一个表达式 exp(-B_str)

    eval(Expression) % 把 exp(-B_str) 送去执行

    ans =0.3867 0.5451 0.4101 0.6335

    0.7937 0.6151 0.4667 0.9817

    【 * 例 4.1.3 .3-2 】综合例题:在 MATLAB 计算生成的图形上标出图名和最大值点坐标。

    clear %清除内存中的所有变量

    a=2; % 设置衰减系数

    w=3; % 设置振荡频率

    t=0:0.01:10; % 取自变量采样数组

    y=exp(-a*t).*sin(w*t); % 计算函数值,产生函数数组

    [y_max,i_max]=max(y); % 找最大值元素位置

    t_text=['t=',num2str(t(i_max))]; % 生成最大值点的横坐标字符串 <7>

    y_text=['y=',num2str(y_max)]; % 生成最大值点的纵坐标字符串 <8>

    max_text=char('maximum',t_text,y_text);% 生成标志最大值点的字符串 <9>

    % 生成标志图名用的字符串

    tit=['y=exp(-',num2str(a),'t)*sin(',num2str(w),'t)']; %<11>

    plot(t,zeros(size(t)),'k') % 画纵坐标为 0 的基准线

    hold on % 保持绘制的线不被清除

    plot(t,y,'b') % 用兰色画 y(t) 曲线

    plot(t(i_max),y_max,'r.','MarkerSize',20) % 用大红点标最大值点

    text(t(i_max)+0.3,y_max+0.05,max_text) % 在图上书写最大值点的数据值 <16>

    title(tit),xlabel('t'),ylabel('y'),hold off% 书写图名、横坐标名、纵坐标名

    19_clip_image006.gif

    图 4.1.3 .3-1 字符串运用示意图

    4.1.3.4 利用元胞数组创建复杂字符串

    【 * 例 4.1.3 .4-1 】元胞数组在存放和操作字符串上的应用。

    a='MATLAB 5 ';b='introduces new data types:'; %创建单行字符串 a,b

    c1=' ◆ Multidimensional array';c2=' ◆ User-definable data structure';

    c3=' ◆ Cell arrays';c4=' ◆ Character array';

    c=char(c1,c2,c3,c4); % 创建多行字符串 c

    C={a;b;c}; % 利用元胞数组存放长短不同的字符串 <5>

    disp([C{1:2}]) % 显示前两个元胞中的字符内容 <6>

    disp(' ') % 显示一行空白

    disp(C{3}) % 显示第 3 个元胞中的字符内容 <8>

    MATLAB 5 introduces new data types:◆ Multidimensional array

    ◆ User-definable data structure

    ◆ Cell arrays

    ◆ Character array

    4.1.4 串转换函数

    【 * 例 4.1.4 -1 】 fprintf, sprintf, sscanf 的用法示例。

    rand('state',0);a=rand(2,2); %产生

    19_clip_image002_0000.gif随机阵

    s1=num2str(a) % 把数值数组转换为串数组

    s_s=sprintf('%.10e\n',a) %10 数位科学记述串 , 每写一个元素就换行。

    s1 =0.95013 0.60684

    0.23114 0.48598

    s_s =

    9.5012928515e-001

    2.3113851357e-001

    6.0684258354e-001

    4.8598246871e-001

    fprintf('%.5g \\',a) % 以 5 位数位最短形式显示。不能赋值用

    0.95013\0.23114\0.60684\0.48598\s_sscan=sscanf(s_s,'%f',[3,2])%浮点格式把串转换成成

    19_clip_image004_0000.gif数值数组。

    s_sscan =0.9501 0.4860

    0.2311 0

    0.6068 0

    展开全文
  • JS中获取数组中最大 /* 1、定义一个变量num 2、让num的初始是等于数组的第一个 3、拿num去和数组的每一个做比较,如果num小于arr[i],那就让num = arr[i] */ var arry = [45,56,90,230,40,230.4]; ...
  • 如果不存在公共前缀,返回空字符串""。 示例1: 输入: ["flower","flow",...解题思路: 从前往后一次比较字符串获取公共前缀 画图帮助理解一下: 代码实现: var longestCommonPrefix =...
  • 十二、给一个二维数组inArr[ ][ ],写一个方法获取每一列的最大值,输出到一个一维数组outArr[ ]。 如:inArr[ ][ ]={{1,8,3},{6,5}},则输出outArr[ ] = {8,6} 选取一组一维数组,求出它的...
  • c语言数组中字符串

    千次阅读 2021-05-19 09:27:39
    字符串中的字符数称为字符串的长度. 零元素的字符串称为空字符串.... maxsize表示字符串最大长度,maxsize + 1表示字符数组的长度,多余的长度用于存储0标识符...示例: 在二维字符数组的每一行...
  • 1.PHP获取一维数组中最大值$a=array('1','3','55','99');$pos = array_search(max($a), $a);echo $a[$pos]; //992.PHP获取一维数组中的最小值$a=array('1','3','55','99');$pos = array_search(min($a), $a);echo ...
  • 字符串数组 #include<iostream> #include<stdio.h> #include<string.h> #include<stdlib.h> //多维数组(二维以上) int main01() { using namespace std; int num[2][3][4];//定义了...
  • 下面小编就为大家分享一篇java提取json某个数组的所有方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • enumerate()方法 enumerate()函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标 x = [13, 21.2, 17.4, 16, 4] list(enumerate(x)) # 输出 [(0, 13), (1, 21.2), ...
  • 获取C/C++字符串、字符数组长度

    万次阅读 多人点赞 2018-03-26 21:18:24
    在C/C++常用的获取字符串长度或者字符串数组长度的函数有 sizeof() length() strlen() size() 其中strlen(str)和str.length()和str.size()都可以用来求字符串的长度 str.length()和str.size()是用于求...
  • 数组-找数组中最大值数组中最大值,并得到对应的下标 思路分析 1.定义一个数组 2.假定一个元素为最大值max=arr[0],maxIndex=当前元素下标 3.遍历比较 public class ArrayExercise02{ public static void ...
  • JS 数组获取最大值

    千次阅读 2021-01-12 03:48:55
    一、一维数组var a=[1,2,3,5];...//最大值alert(Math.min.apply(null, a));//最小值二、二维数组var a=[1,2,3,[5,6],[1,4,8]];var ta=a.join(",").split(",");//转化为一维数组alert(Math.max.apply(null,ta));//...
  • 字符串数组互转
  • sizeof(...)是运算符,其在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。由于在编译时计算,因此sizeof不能用来返回动态分配的内存...
  • Java获取数组最大值和最小值 声明2个变量,取数组任意两个值进行赋值 遍历数组,分别与这两值比较,比当前最大值大时,把它赋值给最大值,比当前最小值小时,把它赋值给最小值。 public class GetMaxMin ...
  • 1.数组a = [1,2,3,5,6,7,8,9,0]print(a)#如何创建一个listL1 =[]print(type(L1))print(L1)L2= [1,2,0,3,0,5,6,7,8,9,0]print(L2 )#增L2.append(11) #插入...插入什么数据) 其他数据会向右移一个位置#list每个,...
  • 我们在用C语言编写程序时,经常会遇到使用字符串数组的情况,这种数组的特点是, 数组的每个元素都是一个字符串,但每个字符串的长度却不相同。如果你使用C++语言进行编程的话,实现起来相对比较简单,只需直接...
  • javascript - 查找对象数组中属性的最大值我正在寻找一种非常快速,干净和有效的方法来获取以下JSON切片的最大“y”值:[{"x":"8/11/2009","y":0.026572007},{"x":"8/12/2009","y":0.025057454},{"x":"8/13/2009",...
  • var str = [‘a’, ‘b’, ‘a’, ‘s’, ‘f’, ‘g’, ‘g’, ‘g’, ‘h’, ‘j’, ‘j’, ‘k’, ‘k’, ‘g’, ‘f’, ...2.1遍历数组中的每一个字符 for(var i = 0;i<str.length;i++){ 判断该字符是不是第一
  • js取数组获取最大值的四种方式

    万次阅读 2018-09-05 16:37:43
    1.apply()应用某一对象的一个方法,用另...由于max()里面参数不能为数组,所以借助apply(funtion,args)方法调用Math.max(),function为要调用的方法,args是数组对象,当function为null时,默认为上文,即相当于apply...
  • 要用到程序在运行时,每天用一个text文本保存系统运行的任何记录,但又怕硬盘容量不够,所以就想办法限制文件夹里的text文本最大数量,超过最大值,就先删除最旧的文本,所以就要用到文件夹遍历和文本的路径保存问题...
  • 目标参数若是字符串,可通过split()方法转换为数组 var str="qwertyuiopasdfghjklzxcvbnmqazwsxaswazaaa"; var arr=str.split(""); // 转换为数组 1、 function moreLetter(arr) { if (!arr) return false; ...
  • shell 获取数组最大值,最小值

    千次阅读 2021-01-14 17:36:02
    declare -a indexlist indexlist=(1610553600 1610208000 1610121600 1610467200 1610294400 1610380800) minDate=${indexlist[0]} for i in ${indexlist[@]};do if [[ ${minDate} -gt $i ]];...
  • 用 prompt 输入字符串创建数组。用三种方法找出数组中最大值。问题阐述与解决。 实现目标:输入一组数,并找出这组数最大的值。 采用的方法: 双 for循环,列出从小到大(从大到小)顺序。 单 for 循环,一遍循环...
  • ES6 Ts 里取数组里的最大值

    千次阅读 2020-06-09 11:50:28
    最大值 : let arr = [1,2,3,4,5,6] console.log( Math.max(...arr) ) // 结果为6 最小值 : let arr = [1,2,3,4,5,6] console.log( Math.min(...arr) ) // 结果为1
  • 首先定义一个对象数组 var lists = [{id:1,title:'22'}, {id:1212,title:'2122'}, {id:132,title:'2额122'} ...其次遍历对象数组中的id var arry =lists.map(x => x.id) 此时打印结果cons...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 205,742
精华内容 82,296
关键字:

获取字符串数组中的最大值