嘿所以我有一个双打矢量,如
A =
0.801803535307197 0.737925186997728 0.623273483797294 0.722046963741684 0.542990601252408 0.427383289758162 0.683274297039423 0.487075921796818 0.724212337440899 0.471205842265225 0.705330994860834 0.489516811267092 0.598658541230977 0.759194544103108
我还有一个char类型数据的相应矢量列表,例如
B =
Neque porro quisquam est qui dolorem ipsum quia dolor sit amet consectetur adipisci velit
(每个双有一个单词)
我想使用sort函数(sort(A))以数字方式命令双打,但我也希望在char列表上执行排序(以相同的方式) - 我该怎么做?
非常感谢您和您的家人
答案 0 :(得分:0)
一些让你入门的例子:
B = 'Neque porro quisquam est qui dolorem ipsum quia dolor sit amet consectetur adipisci velit';
B_list=strsplit(B,' ')
A = rand(size(B_list))
[a_sort, ix] = sort(A)
b_sort = [B_list(ix); repmat({' '},1,numel(ix))]
b_sort = [b_sort{1:end-1}]
B_list = 'Neque' 'porro' 'quisquam' 'est' 'qui' 'dolorem' 'ipsum' 'quia' 'dolor' 'sit' 'amet' 'consectetur' 'adipisci' 'velit'
A = 0.8147 0.9058 0.1270 0.9134 0.6324 0.0975 0.2785 0.5469 0.9575 0.9649 0.1576 0.9706 0.9572 0.4854
a_sort = 0.0975 0.1270 0.1576 0.2785 0.4854 0.5469 0.6324 0.8147 0.9058 0.9134 0.9572 0.9575 0.9649 0.9706
ix = 6 3 11 7 14 8 5 1 2 4 13 9 10 12
b_sort = Neque velit quisquam ipsum dolor qui porro adipisci dolorem quia sit amet consectetur est