首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何从数组列表中选择4个不同的文本而不重复

从数组列表中选择4个不同的文本而不重复的方法有多种。以下是其中一种常见的方法:

  1. 首先,确保数组列表中至少有4个不同的文本元素。
  2. 创建一个空数组,用于存储选择的文本。
  3. 使用循环来选择文本。循环的次数为4,每次循环选择一个文本。
  4. 在每次循环中,生成一个随机数,范围为0到数组列表长度减1。
  5. 检查随机数对应的文本是否已经被选择过,如果已经选择过,则重新生成随机数,直到找到一个未选择过的文本。
  6. 将未选择过的文本添加到存储选择的文本的数组中。
  7. 重复步骤4到步骤6,直到选择了4个不同的文本。
  8. 返回存储选择的文本的数组作为结果。

以下是一个示例的JavaScript代码实现:

代码语言:javascript
复制
function selectDistinctTextsFromArray(array) {
  if (array.length < 4) {
    return "数组列表中的元素不足4个";
  }

  var selectedTexts = [];

  while (selectedTexts.length < 4) {
    var randomIndex = Math.floor(Math.random() * array.length);
    var selectedText = array[randomIndex];

    if (!selectedTexts.includes(selectedText)) {
      selectedTexts.push(selectedText);
    }
  }

  return selectedTexts;
}

var array = ["文本1", "文本2", "文本3", "文本4", "文本5", "文本6", "文本7", "文本8"];
var selectedTexts = selectDistinctTextsFromArray(array);
console.log(selectedTexts);

这个方法通过生成随机数来选择文本,并使用一个额外的数组来存储已选择的文本,确保选择的文本不重复。这样可以保证从数组列表中选择4个不同的文本。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

教程|Python Web页面抓取:循序渐进

这次会概述入门所需知识,包括如何页面源获取基于文本数据以及如何将这些数据存储到文件并根据设置参数对输出进行排序。最后,还会介绍Python Web爬虫高级功能。...确定对象,建立Lists Python允许程序员在指定确切类型情况下设计对象。只需键入对象标题并指定一个值即可。 确立1.png Python列表(Lists)有序可变,并且可重复。...提取数据 有趣困难部分–HTML文件中提取数据。几乎在所有情况下,都是页面的不同部分取出一小部分,再将其存储到列表。...然后可以将对象名称分给先前创建列表数组“results”,但是这样会将带有文本标记带到一个元素。大多数情况下,只需要文本本身不需任何其他标签。...最简单方法之一是重复上面的代码,每次都更改URL,但这种操作很烦。所以,构建循环和要访问URL数组即可。 ✔️创建多个数组存储不同数据集,并将其输出到不同文件

9.2K50

精通Excel数组公式022:提取唯一值列表并排序(续)

图13 使用数组公式对基于数字列记录进行排序 下面的公式没有借助辅助列,而是使用数组公式对基于数字列记录排序,如下图14所示。注意,第2个公式COUNTIF函数解决了重复数字问题。 ?...图16 使用数组公式提取唯一值列表并排序混合数据 下图17展示了混合数据中提取唯一值并排序公式。 ? 图17 一个超级长公式!下面简要讲解该公式。...如下图18所示,对于单元格区域A2:A5数据,升序排列后结果显示在单元格区域G2:G5。单元格区域C2:C5数字表示,如果排序该列表,有几个数据在你前面。...例如,对于单元格A2数据(54678)来说,处于排序后列表顶部,没有数据在其前面,因此为0;数据(SD-987-56)在排序后有3个数据在其前面,因此为3。在公式需要能够创建出这些数字。...:A5)^0代替公式数组常量: =MMULT(--(A2:A5>TRANSPOSE(A2:A5)),ROW(A2:A5)^0) 如果希望空单元格导致公式失败,使用IF(A2:A5””,A2:A5

5.3K10
  • 与机器学习算法相关数据结构

    在执行矩阵运算时,你必须令人眼花缭乱各种库、数据类型甚至语言中进行选择。...虽然二叉树排序受到约束,但它绝不是唯一,并且根据插入顺序,可以在许多不同配置中排列相同列表。 有几种转换可以应用于树,以使其更加平衡。...通常,顶部最高排序值是堆中提取,以便对列表进行排序。与树不同,大多数堆只是存储在数组,元素之间关系仅是隐式。 堆叠 堆栈被定义为“先进后出”,一个元素被推到堆栈顶部,覆盖前一个元素。...队列在实时编程中非常有用,因此程序可以维护要处理作业列表。集合由非重复元素无序列表组成。如果您添加了一个已经在集合元素,则不会有任何更改。...如何在LIBSVM库重构核函数计算? 6. 文本描述哪些数据结构是抽象类型? 7. 你可以使用什么内部表示/数据结构来实现抽象数据类型?是否有未列入上述清单

    2.4K30

    Java集合类详解

    如何遍历Collection每一个元素?...历史集合类,之所以这样命名是因为 Java 类库 1.0 发行版就开始沿用至今了。 如果历史集合类转换到新框架类,主要差异之一在于所有的操作都和新类不同步。...Set包含重复元素,即Set不存两个这样元素e1和e2,使得e1.equals(e2)为true。...用户可以根据元素整数索引(在列表位置)访问元素,并搜索列表元素。 与 set 不同列表通常允许重复元素。...还提供了一个方法来获取列表中指定位置开始列表迭代器。 List 接口提供了两种搜索指定对象方法。性能观点来看,应该小心使用这些方法。在很多实现,它们将执行高开销线性搜索。

    93020

    ChatGPT为啥这么强:万字长文详解 by WolframAlpha之父

    在这种(“零度”)情况下,很快就会出现相当混乱和重复情况。 但如果总是挑选 “顶级”词,而是有时随机挑选 “非顶级 “词(“随机性”对应 “温度”为0.8)呢?...我们就又可以续写文本了: 每次这样做,都会有不同随机选择,对应文本也会不同。...ChatGPT总是基于概率来选择下一个单词。但这些概率从何而来呢? 让我们先从一个更简单问题开始。当我们考虑逐字母(而非逐词)生成英文文本,该如何确定每个字母概率呢?...而且神经网络传统也认为,只要初始设置“大致正确”,通过足够训练,通常可以自动调整细节,不需要真正“理解神经网络是如何进行工程配置”。...本质上,它将token序列原始embedding集合转换为最终集合。ChatGPT特定工作方式是选择该集合最后一个embedding,并对其进行“解码”,以产生下一个token概率列表

    79660

    ChatGPT为啥这么强:万字长文详解 by WolframAlpha之父

    在这种(”零度”)情况下,很快就会出现相当混乱和重复情况。 但如果总是挑选 “顶级 “词,而是有时随机挑选 “非顶级 “词(”随机性 “对应 “温度 “为0.8)呢?...我们就又可以续写文本了: 每次这样做,都会有不同随机选择,对应文本也会不同。...ChatGPT总是基于概率来选择下一个单词。但这些概率从何而来呢? 让我们先从一个更简单问题开始。当我们考虑逐字母(而非逐词)生成英文文本,该如何确定每个字母概率呢?...而且神经网络传统也认为,只要初始设置“大致正确”,通过足够训练,通常可以自动调整细节,不需要真正“理解神经网络是如何进行工程配置”。...本质上,它将token序列原始embedding集合转换为最终集合。ChatGPT特定工作方式是选择该集合最后一个embedding,并对其进行“解码”,以产生下一个token概率列表

    59910

    Ask Apple 2022 与 SwiftUI 有关问答(下)

    快速检索数组元素Q:为什么没有简单方法将 TABLE 选择行映射到提供表内容数组元素上?似乎唯一方法是在数组搜索匹配 id 值,这对于大表来说似乎效率很低。...A:用数组索引来存储选择是很脆弱:如果数组发生了突变,选择就会变得不同步。Swift Collections[6] 有一个 OrderedDictionary,可能会对你有所帮助。...创建底部开始滚动视图Q:我如何实现一个在底部对齐滚动视图,在 macOS 上会不会有糟糕性能?...Swiftcord[12] 代码展示了如何在 SwiftUI 下实现倒置列表。阅读 优化在 SwiftUI List 显示大数据集响应效率[13] 一文,了解苹果工程师推荐方法。...因为这些使用并不有害,我们希望开发者因为使用了新编译器版本处理一堆警告。

    14.8K30

    70个NumPy练习:在Python下一举搞定机器学习矩阵运算

    难度:2 问题:将arr数组所有奇数替换为-1更改arr数组 输入: 输出: 答案: 7.如何重塑数组?...难度:3: 问题:选择没有nan值iris_2d数组行。 答案: 36.如何找到numpy数组两列之间相关性?...难度:3 问题:在给定numpy数组中找到重复条目(第2个起),并将它们标记为True。第一次出现应该是False。 输出: 答案: 59.如何找到numpy分组平均值?...输出: 答案: 65.如何找到数组第n个重复索引 难度:2 问题:找出x第1个重复5次索引。...难度:2 问题:创建一个长度为10numpy数组5开始,在连续数字之间有一个3步长。 答案: 69.如何填写不规则numpy日期系列缺失日期? 难度:3 问题:给定一个连续日期数组

    20.7K42

    Excel匹配函数全应用

    重复一遍,找什么,在哪里找,返回第几列,最后一个参数为空。 第一部分:Vlookup常见错误 本次课程讨论拼写错误,直接和大家分享Vlookup常见错误一。第一个错误是什么呢?...图片中可以发现excel也知道大家容易遇到这样错误,所以一般情况下数字会右对齐,文本会左对齐,但是如果你把所有单元格都选择了居中对齐,excel自带提示效果就消失了。...数据库导出数字很多时候都是用文本形式进行存储,但是本案例是如何输入右面的数字6为文本,介绍一个方法,先输入英文下单引号,然后输入数字,此时数字就是以文本形式存储。...模糊匹配关键不是函数用法,而是如何根据刚刚说了一串文本条件(大于8分怎样,大于六分怎样文本)转化为excel可识别的辅助列表。 大家看一下辅助表创建过程。...最后将所有返回值代入Lookup函数,就可以看到lookup函数第一个参数是1,第二个参数是一个数组(前三个都是错误,第四个是0数组),第三个参数就是不同评分。

    3.7K51

    jQuery选择器和选取方法

    :enabled 匹配没有禁用元素 :eq(n) 匹配基于文档顺序、序号0开始选中列表第n个元素(jQuery扩展) :even 匹配列表偶数序号元素。...注意:这与“:first”不同 :gt(n) 匹配基于文档顺序、序号0开始选中列表序号大于n元素( jQuery扩展) :has(sel) 匹配元素拥有匹配内嵌选择器sel子孙元素...注意:这与“:last”不同 :lt(n) 匹配基于文档顺序、序号0开始选中列表序号小于n元素( jQuery扩展) :not(sel) 匹配元素不匹配内嵌选择器sel :nth...注意该过滤器序号是1开始,因此如果一个元素是其父节点第一个子元素,会认为它是奇数元素,匹配是3n+1,不是3n。...要和“:even以及“:odd”过滤器区分开来,后者匹配序号是0开始。 :odd 匹配列表奇数(0开始)序号元素。

    5.2K40

    快速掌握Series~创建Series

    如何创建Series? a 什么是Series? Series是一种类似于一维数组对象,与一维数组对象不同是Series带有标签(索引),通俗来说就是一维带标签(索引)一维数组。...▲带有索引一维数组 b 如何创建Series? Series是一维带标签(索引)一维数组,对于Series最关键也就是索引index和与之对应value值。...value值长度一致,如果不一致会抛出异常(这点需要格外注意); 如果设置索引,默认索引是0到n-1序列值[其中n为data值长度]; 如果data类型为dict字典类型,对应字典key...是ndarray数组类型,index分别指定了无参数默认index索引、指定list列表以及指定ndarray数组类型index。...由于Python字典key不能够重复,所以虽然Series允许使用有重复index值,但是如果使用字典创建Series时候肯定不会有相同index值。

    1.2K20

    VOICE DESIGN GUIDE 语音设计指南翻译

    写人们如何说话,不是他们如何读写。 避免重复短语。 指示用户何时需要提供信息。 不要以为用户知道该怎么做或将会发生什么。 显然目前选择。 一般来说,一次只能提供三个以上选择。...关键词是在以任务和信息为重点技能普遍。设计填充词如何话语出现,然后选择内置目录填充或提供自己关键词填充。...5) 回答多样性 使用多样性将自然和较少机器人感觉注入到对话,并使重复交互听起来不那么死记硬背或记忆,例如通过从相同提示合理同义词随机选择。...通常,读取列表前几项不应超过20秒。 阅读两个到五个项目开始,并根据以下内容进行调整: 用户对列表项目的熟悉程度如何。 项目名称需要多长时间和语音友好。...通过Echo Spot,用户每次只能看到一个列表项目,不管选择了哪个列表模板,但使用Echo Show时,请确保选择一种布局来帮助用户快速浏览项目。

    1.8K30

    Leetcode No.40 组合总和 II(DFS)

    个数, rest 表示我们还需要选择和为rest 数放入列表作为一个组合; 对于当前第 pos 个数,我们有两种方法:选或者选。...每次调用递归函数前,如果我们选了那个数,就需要将其放入列表末尾,该列表存储了我们选所有数。在回溯时,如果我们选了那个数,就要将其列表末尾删除。...上述算法就是一个标准递归 + 回溯算法,但是它并不适用于本题。这是因为题目描述规定了解集不能包含重复组合,上述算法并没有去除重复组合。...如何去掉重复集合(重点) 为了使得解集包含重复组合。...除了存储答案数组外,我们需要O(n) 空间存储列表freq、递归中存储当前选择列表、以及递归需要栈。

    58720

    如何设计一个搜索引擎

    :Word 文档单词拼写检查功能是如何实现?...O(logn),在有序数据结构是特别bug,但是如何进行快速排序,有如下常用排序算法: 实际应用: ①、如何根据年龄给100W用户排序?...需要注意是:布隆过滤器是在内存,如果机器重启,布隆过滤器就会被清空,防止网页重复爬取,需要持久化布隆过滤器,比如定时每半小时持久化一次。...⑤、通过临时索引创建倒排索引 ⑥、记录单词编号在倒排索引文件偏移位置 帮助我们快速地查找某个单词编号在倒排索引存储位置,进而快速地倒排索引读取单词编号对应网页编号列表。...①、当用户在搜索框,输入某个查询文本时候,我们先对用户输入文本进行分词处理。假设分词之后,我们得到 k 个单词。

    2.5K10

    海量数据处理

    拉链法可取α≥1,且结点较大时,拉链法增加指针域可忽略不计,因此节省空间; 在用拉链法构造列表,删除结点操作易于实现。只要简单地删去链表上相应结点即可。...拉链法缺点:指针需要额外空间,故当结点规模较小时,开放定址法较为节省空间,若将节省指针空间用来扩大散列表规模,可使装填因子变小,这又减少了开放定址法冲突,从而提高平均查找速度。   ...2、Bit-map法 位图法基本原理是使用位数组来表示某些元素是否存在,如从8位电话查找重复号码。   ...2)还有一个比较重要问题,如何根据输入元素个数n,确定位数组m大小及hash函数个数,即hash函数选择会影响算法效果。当hash函数个数k=(ln2)*(m/n)时错误率最小。...Trie树一般具有3个基本特性:   (1)根节点包含字符,除根节点之外每一个节点都只包含一个字符;   (2)根节点到某一节点,路径上所经过字符连接起来,为该节点对应字符串;   (3)每个节点所有子节点包含字符都不同

    2.1K140

    PHP使用JSON

    例如,可以表示数组和复杂对象,不仅仅是键和值简单列表。...在这个示例,只有一个名为 people 变量,值是包含三个条目的数组,每个条目是一个人记录,其中包含名、姓和电子邮件地址。上面的示例演示如何用括号将记录组合成一个值。...但是还应该注意,在不同主条目(programmers、authors 和 musicians)之间,记录实际名称/值对可以不一样。...所以,在同样数据结构,可以改变表示数据方式,甚至可以以不同方式表示同一事物。 掌握了 JSON 格式之后,在 JavaScript 中使用它就很简单了。...我就不重复概念了。通俗说,它是一种数据存储格式,就像PHP序列化后字符串一样。它是一种数据描述。比如我们将一 个数组序列化后存放,就可以很容易反序列化后应用。

    2.6K30

    HTML、CSS、JavaScript学习总结

    @ 样式表首要目的是为网页上元素精确定位。其次,把网页上内容结构和格式控制相分离。即html标签主要是定义网页内容,CSS决定这些网页内容如何显示。...– 注释 –>)隐藏内容不让它显示 内嵌样式-2 选择选择器分为: • HTML 选择器 • CLASS 类选择器 • ID 选择器 • 样式选择器 • HTML标签选择器:在HTML页面中使用标签...当你改变这个样式表文件时,所有页面的样式都随之改变。在制作大量相同样式页面的网站时,非常有用,不仅减少了重复工作量,而且有利于以后修改、编辑,浏览时也减少了重复下载代码。...,”c”];//通方案1 • 组合数组创建 – var objArr = [[new Date()],”abc”,1234];//该数组包含三种数据类型,分别是对象类型,字符串类型和数字类型 • 如何引用元素...:objArr[index]形式来使用数组一个元素,index是元素在数组索引,0开始计算 • 数组length属性:表示数组长度 • 多维数组:js本身是没有多维数组概念,要通过组合数组来创建

    3.1K20

    【Linux系列】批量注释

    文章还介绍了几种PHP文件包含函数,包括include()、include_once()、require()和require_once(),以及它们在找不到文件时不同行为。...在编程和文本编辑世界,Vim 是一个备受推崇编辑器,以其强大功能和灵活性闻名。对于那些经常需要在多行中进行相同操作开发者来说,Vim 块插入功能无疑是一个巨大时间节省者。...块插入简介 块插入是一种在 Vim 批量编辑多行文本方法。它允许用户在多个行同一列位置插入或修改文本,而无需手动重复操作。...由于你已经在可视块模式下,所以你输入将被复制到所有选中。这意味着你可以一次性在多行插入相同文本,而无需重复输入。 退出插入模式 完成文本输入后,按Esc键退出插入模式。...例如,如果你需要在多行代码末尾添加//注释,可以使用块插入快速完成。 初始化数组列表:在需要初始化多个变量或数组元素时,块插入可以帮你快速在多行插入相同初始值。

    6700

    python 面试题-收集100+面试题笔试题

    输出指定字符串A在字符串B第一次出现位置,如果B包含A,则输出-1 0 开始计数 A = “hello” B = “hi how are you hello world, hello yoyo...求满足规律 100 以内所有数据 第3章 列表练习题 3.1 反转(判断对称) 如何判断一个数组是对称数组: 要求:判断数组元素是否对称。...2.a或b包含所有元素 3.a包含集合b包含元素 第5章 综合练习题(上机考试) 5.1 有1、2、3、4组成无重复三位数(排列组合) 有1、2、3、4数字能组成多少互不相同无重复三位数...文本每行中长度超过3单词 在以下文本找出 每行中长度超过3单词: Call me Ishmael....例如:“hello”就包含重复字符‘l’,“world”就不包含重复字符, 有重复打印True, 没重复打印False 5.20 找出一个字符串中子串不含有重复字符最长子串(子串) 给定一个字符串,

    6.8K20

    Java面试题:Java集合及其继承关系

    Map是键值对映射容器,与List和Set有明显区别,Set存储零散元素且不允许有重复元素(数学集合也是如此),List是线性结构容器,适用于按数值索引访问元素情形。...5、List和Set区别 Set是最简单一种集合。集合对象按特定方式排序,并且没有重复对象。...以下是ArrayList和Vector不同点。 Vector是同步ArrayList不是。然而,如果你寻求在迭代时候对列表进行改变,你应该使用CopyOnWriteArrayList。...但是,他们有以下不同点: HashMap允许键和值是null,Hashtable不允许键或者值是null。 Hashtable是同步HashMap不是。...p=217%5D 23、如何决定选用HashMap还是TreeMap? 对于在Map插入、删除和定位元素这类操作,HashMap是最好选择

    1.3K00
    领券