1、將一整數逆序後放入一陣列中(要求遞迴實現)
void convert(
int*result,
int n)
int main(
int argc,
char
* ar**)
;convert(result, n)
;printf
("%d:"
, n)
;for
(int i=0; i<9; i++)
printf
("%d"
, result[i]);
}
2、求高於平均分的學生學號及成績(學號和成績人工輸入)
double find(int total, int n) else else ;
if(n>0 && strlen(source)>0 && n<=strlen(source))
find(source, result, 3);
5、分解成質因數(如435234=251*17*17*3*2,據說是華為筆試題)
void prim(int m, int n) ;
int v[4] = ;
char maze[max_size][max_size] = ,,,
,,,,
};void findpath(int x, int y) else for(int k = 0; k < 4; k++)
if(x >= 0 && y >= 0 && y < max_size && x < max_size && 'o' == maze[x][y]) ; // 各行黑點數和的情況
int ipointsc[cols] = ; // 各列黑點數和的情況
int icount, ifound;
int isumr[rows], isumc[cols], grid[rows][cols];
int set(int irowno) else else if(grid[irowno][icolno]==0) ;
// 在剩餘張數n中組合出面值和value
int combine(int n, int value) else for(int i=1; i0; i++)
if(value-stamp[i] >= 0) else , // 行號:任務序號,列號:工人序號
, // 每行元素值表示這個任務由不同工人完成所需要的時間,};
int mincost=1000;
int task[n], temptask[n], worker[n];
void assign(int k, int cost) else else ;
// 尋找最佳過橋方案。remnant:未過橋人數; curtime:當前已用時間;
// direction:過橋方向,1--向右,0--向左
void find(int remnant, int curtime, int direction) else if(direction == 1) else else if(str[j]!='*') node;
node *create(int n) ;
show(list, n); // 輸出排序前序列
qsort(list, 0, n-1); // 快速排序
show(list, n); // 輸出排序後序列
21、2023年11月23日慧通筆試題:寫一函式判斷某個整數是否為回文數,如12321為回文數。可以用判斷入棧和出棧是否相同來實現(略微複雜些),這裡是將整數逆序後形成另一整數,判斷兩個整數是否相等來實現的。
#include "stdafx.h"
int isechonum(int num) node;
node *create(int n) { // 建立單鏈表,n為節點個數
node *p = (node *)malloc(sizeof(node));
node *head = p; head->data = 'a';
for(int i='b'; i<'a'+n; i++) {
p = (p->next = (node *)malloc(sizeof(node)));
p->data = i;
p->next = null;
return head;
void addcircle(node *head, int n) { // 增加環,將鏈尾指向鏈中第n個節點
node *q, *p = head;
for(int i=1; p->next; i++) {
if(i==n) q = p;
p = p->next;
p->next = q;
int iscircle(node *head) { // 這是筆試時需要寫的最主要函式,其他函式可以不寫
node *p=head,*q=head;
while( p->next && q->next) {
p = p->next;
if (null == (q=q->next->next)) return 0;
if (p == q) return 1;
return 0;
int main(int argc, char* ar**) {
node *head = create(12);
addcircle(head, 8); // 注釋掉此行,連表就沒有環了
printf("%d\n", iscircle(head));
IT公司筆試題演算法部分(三)
20 快速排序 東軟喜歡考類似的演算法填空題,又如堆排序的演算法等 include stdafx.h define n 10 intpart int list,int low,int high 一趟排序,返回分割點位置 list low tmp return low void qsort int l...
筆試演算法題公司真題記錄
快手2020春招第一題 整數n劃分為k份,求k個數字的最大乘積 例如 整數7分3份 最大2 2 3 12 思路 均值不等式 ab 1 2 a 2 b 2 a和b相等時乘積最大 n,k int i for i in input split a為每份平均數字,b為最後的餘數 a n k b n k su...
演算法題之路 網易 小易回公司 最快時間
終於到週末啦!小易走在市區的街道上準備找朋友聚會,突然伺服器發來警報,小易需要立即回公司修復這個緊急bug。假設市區是乙個無限大的區域,每條街道假設座標是 x,y 小易當前在 0,0 街道,辦公室在 gx,gy 街道上。小易周圍有多個計程車打車點,小易趕去辦公室有兩種選擇,一種就是走路去公司,另外一...