首頁 後端開發 php教程 今天去聚美的幾個面試題

今天去聚美的幾個面試題

Aug 08, 2016 am 09:23 AM
array create product

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');
登入後複製
3、有兩個表:
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教程有興趣的朋友有所幫助。

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

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

使用C#中的Array.Sort函數對陣列進行排序 使用C#中的Array.Sort函數對陣列進行排序 Nov 18, 2023 am 10:37 AM

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

如何使用PHP中的array_combine函數將兩個陣列拼成關聯數組 如何使用PHP中的array_combine函數將兩個陣列拼成關聯數組 Jun 26, 2023 pm 01:41 PM

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

簡單明了的PHP array_merge_recursive()函式使用方法 簡單明了的PHP array_merge_recursive()函式使用方法 Jun 27, 2023 pm 01:48 PM

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

SpringBoot怎麼載入多個設定檔實作dev、product多環境切換 SpringBoot怎麼載入多個設定檔實作dev、product多環境切換 May 12, 2023 pm 11:58 PM

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

PHP array_fill()函數用法詳解 PHP array_fill()函數用法詳解 Jun 27, 2023 am 08:42 AM

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

PHP array_change_key_case()函數使用方法介紹 PHP array_change_key_case()函數使用方法介紹 Jun 27, 2023 am 10:43 AM

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

Python中的Array模組怎麼使用 Python中的Array模組怎麼使用 May 01, 2023 am 09:13 AM

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

Java中的ArrayStoreException異常的解決方法 Java中的ArrayStoreException異常的解決方法 Jun 25, 2023 am 08:05 AM

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

See all articles