Задачка на поиск связей между элементами строкового массива.
Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті
Это классическая задача подбора имортированных товаров к товарам из каталога. Например в каталоге товар записана как Apple iphone 5s (16Gb, silver), магазин же в прайсе пишет товар Silver Iphone 5s 16 Gb Facetime . В самом элементарном виде мы имеем входящее название товара, нужно для входящего товара подобрать похожие товары из каталога и вывести результат в массив до 10 похожих товаров. Вот входнящий товар:
Silver Iphone 5s 16 Gb Facetime
и массив всех товаров из каталога:
(Samsung Galaxy 2,Samsung Galaxy s3,Samsung Galaxy s4,Samsung Galaxy s5,Samsung Galaxy Duos,Samsung Galaxy Duos 2,Samsung Galaxy Mega, Samsung Galaxy Mega 2, Samsung Galaxy Yong,Sony Xperia XL,Sony Xperia L,Sony Xperia SL,Sony Xperia S,Apple Iphone 5s 16Gb gray,Apple Iphone 5s 16Gb gold,Apple Iphone 5s 16Gb silver,Apple Iphone 5s 32Gb gray,Apple Iphone 5s 32Gb gold,Apple Iphone 5s 32Gb silver,Apple Iphone 5s 64Gb gray,Apple Iphone 5s 64Gb gold,Apple Iphone 5s 64Gb silver,Apple Iphone 5 16Gb gray,Apple Iphone 5 16Gb gold,Apple Iphone 5 16Gb silver)
Вот пример вывода для Silver Iphone 5s 16 Gb Facetime
(Apple Iphone 5s 16Gb silver, Apple Iphone 5s 32Gb silver, Apple Iphone 5s 16Gb gray, Apple Iphone 5s 16Gb gold, Apple Iphone 5s 16Gb silver,Apple Iphone 5s 32Gb gray,Apple Iphone 5s 32Gb gold,Apple Iphone 5s 32Gb silver,Apple Iphone 5s 64Gb gray,Apple Iphone 5s 64Gb gold,Apple Iphone 5s 64Gb silver,Apple Iphone 5 16Gb gray,Apple Iphone 5 16Gb gold,Apple Iphone 5 16Gb silver ).
Свое решение выложу вечером, топорное решение заняло где то 30 минут на PHP и подозреваю на java занимает столько же. Естественно приветсвуются елегантные быстрые решения.
184 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарів