当前位置: 首页 > wzjs >正文

做营销网站推广网络平台有哪些

做营销网站推广,网络平台有哪些,专业营销型网站建设,做政协网站软件的公司rust除了结构体,还有集合类型,同样也很重要,常见的有数组(Array)、向量(Vector)、哈希表(HashMap) 和 集合(HashSet)字符串等,好意外呀…

rust除了结构体,还有集合类型,同样也很重要,常见的有数组(Array)、向量(Vector)、哈希表(HashMap) 和 集合(HashSet)字符串等,好意外呀,go没有HashMap、HashSet

数组(Array)、向量(Vector)之前已经接触过了,Array是固定的,数据存放在栈上,Vector是动态数组,数据存放在堆上。通过一个题再复习一下

242. 有效的字母异位词

给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的 字母异位词。

示例 1:

输入: s = "anagram", t = "nagaram"
输出: true

示例 2:

输入: s = "rat", t = "car"
输出: false

提示:

  • 1 <= s.length, t.length <= 5 * 104
  • s 和 t 仅包含小写字母

进阶: 如果输入字符串包含 unicode 字符怎么办?你能否调整你的解法来应对这种情况?

use std::string;
pub fn is_anagram(s: String, t: String) -> bool {// 定义一个长度26的数组,因为字母有26个let mut nums = vec![0;26];// 因为每个字母ASCII都一样,先统计s放入数组,然后再统计t取出for c in s.bytes() {nums[c as usize - 'a' as usize] += 1;}for c2 in t.bytes() {nums[c2 as usize - 'a' as usize] -= 1;}//一入一出,再看数组如果数组值都是0说明有效的字母异位词返回ture,否则返回falsefor i in nums {if i != 0 {return false;}}return  true;}fn main() {let s = String::from("anagram");let t = String::from("nagaram");let res = is_anagram(s, t);println!("{}", res);println!("{}", is_anagram(String::from("rat"),String::from("car")));}

HashSet 学过java的同学很熟悉,它一种不可重复切无序的集合,和HashMap相似 HashMap下一篇再讲, 本次我们用它来解决 两个数组的交集

基本用法

use std::collections::HashSet;let mut set: HashSet<i32> = HashSet::new();// 插入元素
set.insert(1);
set.insert(2);
set.insert(3);// 检查是否包含某个值
if set.contains(&2) {println!("集合包含 2");
}// 删除元素
set.remove(&2);// 遍历集合
for num in &set {println!("{}", num);
}

349. 两个数组的交集

给定两个数组 nums1 和 nums2 ,返回 它们的 交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。

示例 1:

输入:nums1 = [1,2,2,1], nums2 = [2,2]
输出:[2]

示例 2:

输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]
输出:[9,4]
解释:[4,9] 也是可通过的

提示:

  • 1 <= nums1.length, nums2.length <= 1000
  • 0 <= nums1[i], nums2[i] <= 1000

解答

use std::collections::HashSet;pub fn intersection(nums1: Vec<i32>, nums2: Vec<i32>) -> Vec<i32> {// 有一个数组为空直接返回空if nums1.len() == 0 || nums2.len() == 0 {let vector: Vec<i32> = Vec::new();return  vector;}let mut set: HashSet<i32> = HashSet::new();let mut resultSet : HashSet<i32> = HashSet::new();//先去第一个数组的重复项for i in nums1 {set.insert(i);}for j in nums2 {// 判断nums2的元素在不在set中,存在就是交集,存放到resultSetif set.contains(&j) {resultSet.insert(j);}}return  resultSet.into_iter().collect();}fn main() {let  nums1 = vec![1,2,2,1];let  nums2 = vec![2,2];let res = intersection(nums1, nums2);println!("{:?}", res);}

总结,rust也有丰富的集合类型,本次只学习Vector和HashSet,后面再学其他的,集合很重要,需要重点掌握

http://www.dtcms.com/wzjs/328523.html

相关文章:

  • 钦州网站制作seo也成搜索引擎优化
  • 电脑网站建设规划网页制作用什么软件做
  • 网站开发需求统计免费推广自己的网站
  • 九江便宜做网站自动推广引流app
  • 网站开发用什么编程语言电商怎么做如何从零开始
  • 回复可下载WordPress朝阳seo建站
  • 企业网站模板下载哪家好百度站长工具
  • wordpress底部排关键词优化骗局
  • 网站建设中图片是什么意思补习班
  • 5个在线设计网站微信指数怎么看
  • 唐山网站建设报价百度seo规则
  • 沈阳软件开发培训南京seo外包平台
  • 普陀区建设工程质检网站磁力链最佳的搜索引擎
  • 建设厅特种作业操作证官网怎样做seo搜索引擎优化
  • 二七区网站建设seo网站优化推广教程
  • 贵阳能做网站的公司有哪些软文价格
  • 直播做网站seo 什么意思
  • 论坛网站怎么做2023北京封控了
  • 国外有个专门做病毒营销网站seo关键词排名报价
  • 网站建设 体会seo优化收费
  • 武昌做网站关键词优化推广公司哪家好
  • 网站建设维护协议百度浏览器网址大全
  • 价格划算的网站开发新闻营销发稿平台
  • 宿迁企业网站建设站长工具seo综合查询降级
  • 中国最大的建材网站北京百度搜索排名优化
  • 网站制作心得体会200字百度竞价优缺点
  • 日本网站做任务网络营销概述ppt
  • 个人做网站的流程seo服务靠谱吗
  • 网站前置审批项 教育无线网络优化工程师
  • 好的网站分享nba最新消息交易