C#LeetCode刷题之#21-合并两个有序链表(Merge Two Sorted Lists)
问题
该文章的最新版本已迁移至个人博客【比特飞】,单击链接 https://www.byteflying.com/archives/3818 访问。
将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
输入:1->2->4, 1->3->4
输出:1->1->2->3->4->4
Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists.
Input: 1->2->4, 1->3->4
Output: 1->1->2->3->4->4
示例
该文章的最新版本已迁移至个人博客【比特飞】,单击链接 https://www.byteflying.com/archives/3818 访问。
public class Program {public static void Main(string[] args) {var A = "this apple is sweet";var B = "this apple is sour";var res = UncommonFromSentences(A, B);ShowArray(res);Console.ReadKey();}private static void ShowArray(IList<string> array) {foreach(var domain in array) {Console.Write($"{domain} ");}Console.WriteLine();}private static string[] UncommonFromSentences(string A, string B) {string[] wordA = A.Split(' ');string[] wordB = B.Split(' ');var dicA = new Dictionary<string, int>();var dicB = new Dictionary<string, int>();var res = new List<string>();foreach(var word in wordA) {if(dicA.ContainsKey(word)) {dicA[word]++;} else {dicA[word] = 1;}}foreach(var word in wordB) {if(dicB.ContainsKey(word)) {dicB[word]++;} else {dicB[word] = 1;}}foreach(var kvp in dicA) {if(kvp.Value == 1 && !dicB.ContainsKey(kvp.Key)) {res.Add(kvp.Key);}}foreach(var kvp in dicB) {if(kvp.Value == 1 && !dicA.ContainsKey(kvp.Key)) {res.Add(kvp.Key);}}return res.ToArray();}}
以上给出1种算法实现,以下是这个案例的输出结果:
该文章的最新版本已迁移至个人博客【比特飞】,单击链接 https://www.byteflying.com/archives/3818 访问。
sweet sour
分析:
显而易见,以上算法的时间复杂度为: 。
C#LeetCode刷题之#21-合并两个有序链表(Merge Two Sorted Lists)相关推荐
- LeetCode 21. 合并两个有序链表(Merge Two Sorted Lists)
/*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode(int ...
- LeetCode刷题Java——88.合并两个有序数组(简单)
题目 给你两个按非递减顺序排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目. 请你合并nums2到nums1中,使合并后的数组同样按非递减顺序排列. ...
- LeetCode 21. 合并两个有序链表(链表)
上一篇博客:LeetCode 20. 有效的括号(栈.字符串) 写在前面:大家好!我是ACfun,我的昵称来自两个单词Accepted和fun.我是一个热爱ACM的蒟蒻.最近萌生了刷LeetCode ...
- 【LeetCode】【HOT】21. 合并两个有序链表(递归)
[LeetCode][HOT 100]21. 合并两个有序链表 文章目录 [LeetCode][HOT 100]21. 合并两个有序链表 package hot;import java.util.Ar ...
- [递归|迭代] leetcode 21 合并两个有序链表
[递归|迭代] leetcode 21 合并两个有序链表 1.题目 题目链接 将两个升序链表合并为一个新的升序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2 ...
- leetcode 21 java_LeetCode 21. 合并两个有序链表
LeetCode 21. 合并两个有序链表 题目 将两个升序链表合并为一个新的升序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2->4, 1-> ...
- Java实现 LeetCode 21 合并两个有序链表
21. 合并两个有序链表 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2->4, 1->3->4 输出:1 ...
- 21. 合并两个有序链表 JavaScript实现
21. 合并两个有序链表 合并有序链表 一.递归 递归详解 /*** Definition for singly-linked list.* function ListNode(val, next) ...
- LeetCode 21合并两个有序链表22括号生成
微信搜索bigsai,回复进群,加入打卡.维护不易,欢迎点赞支持! 合并两个有序列表 将两个升序链表合并为一个新的 升序 链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1 ...
最新文章
- 如何用css让一个容器水平垂直居中
- 【51CTO学院三周年】写给自己的51cto
- Leetcode987 二叉树的垂序遍历
- git submodule使用
- 写在前面-2015.11.30
- 未结束的字符文字_PAT B1042:字符统计
- Impala 调用Hbase 报错 LeaseException
- 25 PP模块-创建工厂日历报错-请输入年度xxxx和xxxx之间的有效区域
- 【TensorFlow】TensorFlow函数精讲之tf.get_variable()和tf.get_variable_scope()
- utm坐标和经纬度转换_【技术】经纬度WGS84地理坐标系转换成CGCS2000坐标系步骤...
- 【OS】Linux下 /dev 常见特殊设备介绍与应用[loop]
- OA系统新流程创建与管理办法
- 【博主推荐】html好看的年会抽奖(附源码)
- 项目中出现npm WARN locking errno: -4048, npm WARN locking code: ‘EPERM‘, npm WARN locking syscall:
- Win7设置开机密码后开机不需要输入密码
- uni.showToast() 提示
- 和平精英怎么在电脑上玩?匹配手机最简单的方式玩你值得拥有
- win10系统1903版本设置默认英文输入法
- ERROR [KafkaApi-1] Number of alive brokers ‘1‘ does not meet the required replication factor ‘2‘ for
- yy直播接口开发手册php,微信小程序 服务端接口·直播间接口