You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

合并字符串元胞数组并去除重复项的实现方法

合并元胞数组并去除重复元素的MATLAB解决方案

嘿,这个问题在MATLAB里其实有非常简洁的处理方式,我给你推荐两种实用的方法:

方法一:用unique函数一步到位(推荐)

这是最直接高效的方案,unique函数本身就支持对元胞数组去重,还能自动按字典序排序,刚好匹配你想要的结果:

a = { 'A', 'B', 'C', 'D'}; 
b = { 'E', 'A', 'F', 'D'};
% 先横向拼接两个元胞数组,再用unique去重排序
c = unique([a, b]);

执行后c就会得到 {'A','B','C','D','E','F'},完全符合你的目标。

方法二:手动拼接+去重(适合自定义逻辑场景)

如果你需要更灵活的控制(比如保留元素首次出现的顺序,而不是强制排序),可以用ismember函数来实现:

a = { 'A', 'B', 'C', 'D'}; 
b = { 'E', 'A', 'F', 'D'};
% 先合并两个元胞数组
combined = [a, b];
% 找出所有未重复的元素索引
unique_idx = ~ismember(combined, combined(1:find(ismember(combined, combined), 1, 'last')-1));
% 提取唯一元素
c = combined(unique_idx);

不过这个方法会保留元素的原始出现顺序(这次结果刚好和目标一致,但如果原始数组顺序不同,结果也会对应变化),适合有特殊顺序需求的场景。

内容的提问来源于stack exchange,提问作者Jepessen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:04:20