码迷,mamicode.com
首页 > 其他好文 > 详细

Which are in?

时间:2015-07-12 23:21:01      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:

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();
            }
        }

 

Which are in?

标签:

原文地址:http://www.cnblogs.com/chucklu/p/4641688.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!