Table des matières
面试题之算法集锦,试题算法集锦
Maison php教程 php手册 面试题之算法集锦,试题算法集锦

面试题之算法集锦,试题算法集锦

Jun 13, 2016 am 08:55 AM
面试题

面试题之算法集锦,试题算法集锦

思路1:<span>
把A去重得到A1</span>,B去重得到B1,然后对A1,B1分别进行排序,然后遍历较短的字符串的每个字符是否存在于较长的字符串中,<span>存在则输出
问题</span>:
1.思路很简单,基本大家都会这么考虑,<span>但是面试的时候就没有亮点了
思路2</span>:<span>
假设AB串只包含小写(其实无所谓)</span>,那么创建一个数组,数组的key为a->z,<span>value都是0;
</span><?<span>php
    </span><span>function</span> stringToChar(<span>$str</span>,<span>$num</span>=1,<span>$tmp</span>=<span>null</span><span>){
        </span><span>if</span>(<span>empty</span>(<span>$tmp</span><span>)){
</span><span>$tmp</span>=<span>array</span>('a'=>0,'b'=>0,'c'=>0,'d'=>0,'e'=>0,'f'=>0,'g'=>0,'h'=>0,'i'=>0,'j'=>0,'k'=>0,'l'=>0,'m'=>0,'n'=>0,'o'=>0,'p'=>0,'q'=>0,'r'=>0,'s'=>0,'t'=>0,'u'=>0,'v'=>0,'w'=>0,'x'=>0,'y'=>0,'z'=>0<span>);
        }
        </span><span>$arr_temp</span>=<span>str_split</span>(<span>$str</span>,1<span>);
        </span><span>foreach</span>(<span>$arr_temp</span> <span>as</span> <span>$v</span><span>){
            </span><span>if</span>(<span>$tmp</span>[<span>$v</span>]<<span>$num</span><span>){
                </span><span>$tmp</span>[<span>$v</span>]+=<span>$num</span><span>;
            }
        }
        </span><span>return</span> <span>$tmp</span><span>;
    }
    </span><span>function</span> getStringIntersect(<span>$str1</span>, <span>$str2</span><span>){
        </span><span>$temp</span>=stringToChar(<span>$str1</span>,1<span>);
        </span><span>//</span><span>$str2的$num用2 就是为了区分 stemp中的原来的1 是 $str1中设置的</span>
        <span>$temp</span>=stringToChar(<span>$str2</span>,2,<span>$temp</span><span>);
        </span><span>$result</span>=''<span>;
        </span><span>foreach</span> (<span>$temp</span> <span>as</span> <span>$key</span> => <span>$value</span><span>) {
            </span><span>if</span>(<span>$value</span>===3<span>){
                </span><span>$result</span>.=<span>$key</span><span>;
            }
        }
        </span><span>return</span> <span>$result</span><span>;
    }
    </span><span>$A</span>="common";<span>//</span><span>"hello";</span>
    <span>$B</span>="month";<span>//</span><span>"jeesite";</span>
    <span>$result</span>=getStringIntersect(<span>$A</span>, <span>$B</span><span>);
    </span><span>echo</span> <span>$result</span><span>;
</span>?><br />今天随便浏览网页的时候又发现了这篇文章(一次谷歌面试趣事)<br />我想起来了 思路二出自这篇文章。
Copier après la connexion

 

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

<🎜>: Dead Rails - Comment apprivoiser les loups
4 Il y a quelques semaines By DDD
Niveaux de force pour chaque ennemi et monstre de R.E.P.O.
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
<🎜>: Grow A Garden - Guide de mutation complet
2 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel Java
1662
14
Tutoriel PHP
1261
29
Tutoriel C#
1234
24
Cinq questions et réponses courantes en matière d'entretien en langage Go Cinq questions et réponses courantes en matière d'entretien en langage Go Jun 01, 2023 pm 08:10 PM

En tant que langage de programmation devenu très populaire ces dernières années, le langage Go est devenu un point chaud pour les entretiens dans de nombreuses entreprises. Pour les débutants du langage Go, comment répondre aux questions pertinentes lors du processus d’entretien est une question qui mérite d’être explorée. Voici cinq questions et réponses courantes d’entretien en langage Go pour référence pour les débutants. Veuillez présenter comment fonctionne le mécanisme de récupération de place du langage Go ? Le mécanisme de récupération de place du langage Go est basé sur l'algorithme de balayage de marque et l'algorithme de marquage à trois couleurs. Lorsque l'espace mémoire du programme Go n'est pas suffisant, le garbage collector Go

Résumé des questions d'entretien React front-end en 2023 (Collection) Résumé des questions d'entretien React front-end en 2023 (Collection) Aug 04, 2020 pm 05:33 PM

En tant que site Web d'apprentissage de la programmation bien connu, le site Web chinois php a compilé pour vous des questions d'entretien React afin d'aider les développeurs front-end à préparer et à éliminer les obstacles aux entretiens React.

Une collection complète de questions et réponses d'entretien Web front-end sélectionnées en 2023 (Collection) Une collection complète de questions et réponses d'entretien Web front-end sélectionnées en 2023 (Collection) Apr 08, 2021 am 10:11 AM

Cet article résume certaines questions d'entretien Web frontales sélectionnées qui méritent d'être collectées (avec réponses). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

50 questions d'entretien angulaires que vous devez maîtriser (Collection) 50 questions d'entretien angulaires que vous devez maîtriser (Collection) Jul 23, 2021 am 10:12 AM

Cet article partagera avec vous 50 questions d'entretien Angular qu'il faut maîtriser. Ces 50 questions d'entretien seront analysées en trois parties : débutant, intermédiaire et avancé, et vous aideront à bien les comprendre !

Intervieweur : Que savez-vous de la haute simultanéité ? Moi : euh... Intervieweur : Que savez-vous de la haute simultanéité ? Moi : euh... Jul 26, 2023 pm 04:07 PM

La haute concurrence est une expérience que presque tous les programmeurs souhaitent vivre. La raison est simple : à mesure que le trafic augmente, nous rencontrerons divers problèmes techniques, tels qu'un délai de réponse de l'interface, une charge CPU accrue, des GC fréquents, des blocages, un stockage de données volumineux, etc.

Partage des questions d'entretien à haute fréquence Vue en 2023 (avec analyse des réponses) Partage des questions d'entretien à haute fréquence Vue en 2023 (avec analyse des réponses) Aug 01, 2022 pm 08:08 PM

Cet article résume pour vous quelques questions d'entretien à haute fréquence sélectionnées en 2023 (avec réponses) qui valent la peine d'être collectées. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Jetez un œil à ces questions d'entretien préliminaires pour vous aider à maîtriser les points de connaissances à haute fréquence (4) Jetez un œil à ces questions d'entretien préliminaires pour vous aider à maîtriser les points de connaissances à haute fréquence (4) Feb 20, 2023 pm 07:19 PM

10 questions par jour. Après 100 jours, vous maîtriserez tous les points de connaissances à haute fréquence des entretiens front-end. ! ! , en lisant l'article, j'espère que vous ne regardez pas directement les réponses, mais demandez-vous d'abord si vous le savez, et si oui, quelle est votre réponse ? Pensez-y et comparez-la avec la réponse. Serait-ce mieux ? Bien sûr, si vous avez une meilleure réponse que la mienne, veuillez laisser un message dans la zone de commentaire et discuter ensemble de la beauté de la technologie.

Jetez un œil à ces questions d'entretien préliminaires pour vous aider à maîtriser les points de connaissances à haute fréquence (5) Jetez un œil à ces questions d'entretien préliminaires pour vous aider à maîtriser les points de connaissances à haute fréquence (5) Feb 23, 2023 pm 07:23 PM

10 questions par jour. Après 100 jours, vous maîtriserez tous les points de connaissances à haute fréquence des entretiens front-end. ! ! , en lisant l'article, j'espère que vous ne regardez pas directement la réponse, mais demandez-vous d'abord si vous la connaissez, et si oui, quelle est votre réponse ? Pensez-y et comparez-la avec la réponse. Serait-ce mieux ? Bien sûr, si vous avez une meilleure réponse que la mienne, veuillez laisser un message dans la zone de commentaire et discuter ensemble de la beauté de la technologie.

See all articles