今天去聚美的幾個面試題
1、寫一個函數將1,2,3,4,5,6隨機放到一個陣列,3不能在第三的位置,5和6不能挨著。
function sort_test($array) { while(true) { shuffle($array); $temp = array_flip($array); if ($array[2] != 3 && 1 != abs($temp[5] - $temp[6])) { return $array; } } } $array = array(1,2,3,4,5,6); print_r(sort_test($array));
2、寫一個函數實作 將字串$str="asdfasflasdfopafdsa", 中第一個之出現過一次的字母。
function get_target_letter($str) { $i = 0; $array = array(); while(isset($str[$i])) { $array[$str[$i]] = isset($array[$str[$i]]) ? $array[$str[$i]] + 1 : 1; $i ++; } foreach($array as $key=>$val) { if ($val == 1) { return $key; } } return false; } echo get_target_letter('asdfastflasdfopafdsa');
CREATE TABLE products ( product_id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, product_name VARCHAR(64) NOT NULL ); CREATE TABLE orders ( product_id INT UNSIGNED NOT NULL , create_at INT UNSIGNED NOT NULL, num INT UNSIGNED NOT NULL );
請寫一條sql語句查詢出t1-t2時間段間的產品名、銷售量總數並依照銷售量總數由高到低排序。
我的做法:
SELECT products.product_name, number.num FROM ((SELECT product_id, sum(num) AS num FROM orders WHERE orders.create_at BETWEEN {$t1} AND {$t2} GROUP BY product_id) AS number) INNER JOIN products ON products.product_id = number.product_id ORDER BY number.num DESC;
以上就介紹了今天去聚美的幾個面試問題,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

標題:C#中使用Array.Sort函數對陣列進行排序的範例正文:在C#中,陣列是一種常用的資料結構,經常需要對陣列進行排序運算。 C#提供了Array類,其中有Sort方法可以方便地對陣列進行排序。本文將示範如何使用C#中的Array.Sort函數對陣列進行排序,並提供具體的程式碼範例。首先,我們要先了解Array.Sort函數的基本用法。 Array.So

在PHP中,有許多強大的陣列函數可以讓陣列的操作更加方便和快速。當我們需要將兩個陣列拼成一個關聯數組時,可以使用PHP的array_combine函數來實現這一操作。這個函數其實是用來將一個陣列的鍵當作另一個陣列的值,合併成一個新的關聯數組。接下來,我們將會講解如何使用PHP中的array_combine函數將兩個陣列拼成關聯數組。了解array_comb

在進行PHP編程時,我們常常需要將數組合併。 PHP提供了array_merge()函數來完成數組合併的工作,但是當數組中存在相同的鍵時,函數會覆寫原來的值。為了解決這個問題,PHP在語言中還提供了一個array_merge_recursive()函數,該函數可以合併數組並保留相同鍵的值,使得程式的設計變得更加靈活。 array_merge

1.SpringBoot中實作多環境切換在SpringBoot中,除了application.properties,我們新建的其他設定檔的檔名需要滿足application-{profile}.properties的格式,其中{profile}對應你的環境識別(不一定是.properties文件,也可以是.yml)其對應的{profile}值是開發者自訂的(如dev,product),在專案啟動的時候,只需要加入對應的參數,springboot就會去讀取該設定檔了。具體profile的配

在PHP程式設計中,陣列是一種非常重要的資料結構,能夠輕鬆處理大量資料。 PHP中提供了許多陣列相關的函數,array_fill()就是其中之一。本篇文章將詳細介紹array_fill()函數的用法,以及在實際應用上的一些技巧。一、array_fill()函數概述array_fill()函數的作用是建立一個指定長度的、由相同的值組成的陣列。具體來說,該函數的語法

在PHP程式設計中,陣列是一個常用到的資料型別。而關於陣列的運算子也是相當多的,其中包含了array_change_key_case()函數。這個函數可以將數組中鍵名的大小寫轉換,從而方便我們進行資料的處理。本文就來介紹PHP中array_change_key_case()函數的使用方法。一、函數語法及參數array_change_ke

Python中的array模組是一個預先定義的數組,因此其在記憶體中佔用的空間比標準列表小得多,同時也可以執行快速的元素級別操作,例如添加、刪除、索引和切片等操作。此外,數組中的所有元素都是同一種類型,因此可以使用數組提供的高效數值運算函數,例如計算平均值、最大值和最小值等。另外,array模組還支援將數組物件直接寫入和讀取到二進位檔案中,這使得在處理大量數值資料時更加有效率。因此,如果您需要處理大量同質數據,可以考慮使用Python的array模組來優化程式碼的執行效率。要使用array模組,首先需要

在Java的開發中,我們經常使用陣列來儲存一系列的數據,因為陣列的便利性和效能優勢。但是,在使用陣列的過程中,會出現一些異常情況,其中一個常見的異常就是ArrayStoreException。當我們向數組中儲存不相容的資料類型時,就會拋出這個異常。這篇文章將介紹什麼是ArrayStoreException異常、它的產生原因,以及如何解決這個例外。一、Arr
