Which are in?

Which are in?

Given two arrays of strings a1 and a2 return a sorted array in lexicographical order and without duplicates of the strings of a1 which are substrings of strings of a2.

Example: a1 = ["arp", "live", "strong"]

a2 = ["lively", "alive", "harp", "sharp", "armstrong"]

returns ["arp", "live", "strong"]

a1 = ["tarp", "mice", "bull"]

a2 = ["lively", "alive", "harp", "sharp", "armstrong"]

returns []

Note: Arrays are written in "general" notation. See "Your Test Cases" for examples in your language.

using System;
using System.Linq;
using System.Collections.Generic;

class WhichAreIn
        {
            public static string[] inArray(string[] array1, string[] array2)
            {
                // your code
                 List<string> list = new List<string>();
            foreach (string strItem1 in array1)
            {
                foreach (string strItem2 in array2)
                {
                    if (strItem2.Contains(strItem1))
                    {
                        if (list.Contains(strItem1) == false)
                        {
                            list.Add(strItem1);
                        }
                    }
                }
            }
            list = list.OrderBy(x => x).ToList() ;
            return list.ToArray();
            }
        }

 

 

 

其他人的解法:

需要注意distinct的用法,以及any的用法

using System;
using System.Linq;

class WhichAreIn
        {
            public static string[] inArray(string[] array1, string[] array2)
            {
                 return array1.Distinct()
                              .Where(s1 => array2.Any(s2 => s2.Contains(s1)))
                              .OrderBy(s => s)
                              .ToArray();
            }
        }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值